Software Release

If the post is related to software release


jNetPcap software can be downloaded directly from File Release Servers (FRS). For convenience you will find various links here:

jNetPcap Roadmap - feedback welcome

I would like to hear feedback on the current jnetpcap roadmap. Please let us know what you think. Notice there is a wishlist section, so may be a few items there?

Please leave feedback on this forum topic since comments are disabled on the roadmap page itself.

Exporting project in production


Just finished building a sniffer, to analyse some of my network traffic, and I managed to make it work on my development computer.
Unfortunatly, I can't make it work on the computer I want.
I installed WinPcap_4_1_3, and java, and that's the terminal message I received :

Exception in thread "main" java.lang.UnsatisfiedLinkError: com.slytechs.library.NativeLibrary.dlopen(Ljava/lang/String;)J
at com.slytechs.library.NativeLibrary.dlopen(Native Method)
at com.slytechs.library.NativeLibrary.(Unknown Source)
at com.slytechs.library.JNILibrary.(Unknown Source)
at com.slytechs.library.JNILibrary.loadLibrary(Unknown Source)
at com.slytechs.library.JNILibrary.register(Unknown Source)
at com.slytechs.library.JNILibrary.register(Unknown Source)
at com.slytechs.library.JNILibrary.register(Unknown Source)
at org.jnetpcap.Pcap.(Unknown Source)
at javaapplication1.PacketLoader.(
at javaapplication1.JavaApplication1.main(
Appuyez sur une touche pour continuer...

Netbeans provided me a jar file i'm running, and a library folder which contains jnetpcap.rar.

Would be a big help if you could help me to make it work.

Thanks a lot,


openOffline Method to access from Android Internal Storage

Hi everyone,

I am using JnetPcap library to extract the packets from a Mobile Wireshark application required for Android project analysis. I have to capture the IP address from the pcap file and display the same on the Google Maps.

I am facing an issue reading the Internal Storage of the Android phone using the openOffline method... Can this method be used for Android Internal Storage File Directory ?? The same code is working if the directory path is specified in Windows OS running on a PC....

Any inputs would be highly appreciated...

Please find below the code for the same.

package appprofiler.appprofilerv1;

* Created by soory_000 on 11/30/2015.

import android.os.Environment;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.jnetpcap.Pcap;
import org.jnetpcap.nio.JMemory;
import org.jnetpcap.packet.JFlow;
import org.jnetpcap.packet.JFlowKey;
import org.jnetpcap.packet.JFlowMap;
import org.jnetpcap.packet.JPacket;
import org.jnetpcap.packet.JPacketHandler;
import org.jnetpcap.packet.JScanner;
import org.jnetpcap.packet.PcapPacket;
import org.jnetpcap.protocol.tcpip.Http;
import org.jnetpcap.protocol.tcpip.Tcp;

public class IPExtract {
final static List ipaddress = new ArrayList();
private static String FILENAME;

public IPExtract(String Filename) {
this.FILENAME = Filename;

public static void main(String[] args) {
final StringBuilder errbuf = new StringBuilder();
final Pcap pcap = Pcap.openOffline(FILENAME, errbuf); // While trying to debug I am getting a Library error
if (pcap == null) {

jNetPcap v2 - Implementation

As to implementation of jNetPcap v2 API and library here are my thoughts. This is all up for discussion, so please comment.

Of course, as they say, "the devil is in the details", it is very true.

Technologies to utilize

Here are some technologies that I believe we could benefit from. These are chosen to be have least amount of development and runtime depencies.

Gradle for builds

Gradle is the latest and most configurable build system, supplanting 'maven'.

Simple and designed for multi-modular builds. Available as extensions and great support for all of the major IDEs including eclipse.

CCNI for JNI implementation

Sly Techs has a new compiler developed for JNI. This is called CCNI and provides super easy integration of native and java code.

Over the years JNA has also been suggested as it is widely supported on various platforms. However, I personally do not like JNA because code overhead, too generic and too many encapsulations even of simple things as well as it has runtime requirements.

CCNI is easier to follow as it follows the same style as jsni from Google/GWT toolkit but for C and C++ languages. It is easy to integrate into builds. The CCNI compiler is pure java and thus able to run on any platforms as long as it can generate the target code (OS specific). There are no runtime prerequisites, it still generates a static or shared library with all of the user code included.

Here is a quick "HelloWorld" example of code written using CCNI:

public class HelloWorld {

	public native static String createString()
		jstring strObj = (*env)->NewStringUTF(env, "Hello World!");
		return strObj;

	public static void main(String[] args) {
		String str = HelloWorld.createString();