diff --git a/app/src/main/java/eu/faircode/netguard/LogAdapter.java b/app/src/main/java/eu/faircode/netguard/LogAdapter.java index f84e14d3..d82b5e2f 100644 --- a/app/src/main/java/eu/faircode/netguard/LogAdapter.java +++ b/app/src/main/java/eu/faircode/netguard/LogAdapter.java @@ -100,7 +100,7 @@ public class LogAdapter extends CursorAdapter { else tvProtocol.setText(protocol < 0 ? "" : Integer.toString(protocol)); - tvPort.setText(port <= 0 ? "" : Integer.toString(port)); + tvPort.setText(port < 0 ? "" : Integer.toString(port)); tvFlags.setText(flags); // Application icon diff --git a/app/src/main/jni/netguard/netguard.c b/app/src/main/jni/netguard/netguard.c index 25f9dd79..436f2153 100644 --- a/app/src/main/jni/netguard/netguard.c +++ b/app/src/main/jni/netguard/netguard.c @@ -600,8 +600,8 @@ void handle_ip(const struct arguments *args, const uint8_t *buffer, const uint16 // Get ports & flags int syn = 0; - uint16_t sport = 0; - uint16_t dport = 0; + int32_t sport = -1; + int32_t dport = -1; if (protocol == IPPROTO_TCP) { struct tcphdr *tcp = payload; @@ -684,6 +684,7 @@ void handle_ip(const struct arguments *args, const uint8_t *buffer, const uint16 } } + // Handle allowed traffic if (allowed) { if (protocol == IPPROTO_TCP) allowed = handle_tcp(args, buffer, length, uid); @@ -691,6 +692,7 @@ void handle_ip(const struct arguments *args, const uint8_t *buffer, const uint16 allowed = 0; } + // Log traffic if (args->log) { if (!args->filter || syn) log_java(args, version, source, sport, dest, dport, protocol, flags, uid, allowed); @@ -1352,10 +1354,10 @@ void log_android(int prio, const char *fmt, ...) { } void log_java( - const struct arguments *args, uint8_t version, - const char *source, uint16_t sport, - const char *dest, uint16_t dport, - uint8_t protocol, const char *flags, + const struct arguments *args, jint version, + const char *source, jint sport, + const char *dest, jint dport, + jint protocol, const char *flags, jint uid, jboolean allowed) { #ifdef PROFILE float mselapsed; diff --git a/app/src/main/jni/netguard/netguard.h b/app/src/main/jni/netguard/netguard.h index db9f736d..44fbdaaf 100644 --- a/app/src/main/jni/netguard/netguard.h +++ b/app/src/main/jni/netguard/netguard.h @@ -108,10 +108,10 @@ uint16_t calc_checksum(uint8_t *buffer, uint16_t length); void log_android(int prio, const char *fmt, ...); -void log_java(const struct arguments *args, uint8_t version, - const char *source, uint16_t sport, - const char *dest, uint16_t dport, - uint8_t protocol, const char *flags, +void log_java(const struct arguments *args, jint version, + const char *source, jint sport, + const char *dest, jint dport, + jint protocol, const char *flags, jint uid, jboolean allowed); void write_pcap(const void *ptr, size_t len);