* https://patch-diff.githubusercontent.com/raw/gamelinux/passivedns/pull/128.patch * 0001-Fix-compiler-warning-about-excessive-parenthesis.patch * 0002-Add-support-for-loopback-devices.patch * 0003-Declare-signal_reopen_log_files-as-a-sig_atomic_t.patch * 0001-Added-patch-for-GCC-10-by-acoul.patch OBS-URL: https://build.opensuse.org/package/show/home:mnhauke:security/passivedns?expand=0&rev=5
65 lines
1.8 KiB
Diff
65 lines
1.8 KiB
Diff
From 55ed09ab48c617f392bf3cc08bc02ea8249578c7 Mon Sep 17 00:00:00 2001
|
|
From: Shawn Michael <blkmajik@monkeyspunk.net>
|
|
Date: Wed, 8 Dec 2021 16:27:58 -0700
|
|
Subject: [PATCH 2/3] Add support for loopback devices
|
|
|
|
---
|
|
src/passivedns.c | 14 ++++++++++++++
|
|
src/passivedns.h | 1 +
|
|
2 files changed, 15 insertions(+)
|
|
|
|
diff --git a/src/passivedns.c b/src/passivedns.c
|
|
index b2c2a03..b05d3ba 100644
|
|
--- a/src/passivedns.c
|
|
+++ b/src/passivedns.c
|
|
@@ -66,6 +66,7 @@ uint8_t signal_reopen_log_files = 0;
|
|
static void usage();
|
|
static void show_version();
|
|
void check_vlan (packetinfo *pi);
|
|
+void prepare_null (packetinfo *pi);
|
|
void prepare_raw (packetinfo *pi);
|
|
void prepare_sll (packetinfo *pi);
|
|
void prepare_eth (packetinfo *pi);
|
|
@@ -141,6 +142,9 @@ void got_packet(u_char *useless, const struct pcap_pkthdr *pheader,
|
|
config.inpacket = 1;
|
|
|
|
switch (config.linktype) {
|
|
+ case DLT_NULL:
|
|
+ prepare_null(pi);
|
|
+ break;
|
|
case DLT_RAW:
|
|
prepare_raw(pi);
|
|
break;
|
|
@@ -173,6 +177,16 @@ void got_packet(u_char *useless, const struct pcap_pkthdr *pheader,
|
|
config.inpacket = 0;
|
|
}
|
|
|
|
+void prepare_null(packetinfo *pi)
|
|
+{
|
|
+ pi->eth_hlen = LOOPBACK_HDR_LEN;
|
|
+ if ((u_int32_t)*pi->packet == AF_INET) {
|
|
+ pi->eth_type = ETHERNET_TYPE_IP;
|
|
+ } else {
|
|
+ pi->eth_type = ETHERNET_TYPE_IPV6;
|
|
+ }
|
|
+}
|
|
+
|
|
void prepare_raw(packetinfo *pi)
|
|
{
|
|
pi->eth_hlen = 0;
|
|
diff --git a/src/passivedns.h b/src/passivedns.h
|
|
index 1031104..594852d 100644
|
|
--- a/src/passivedns.h
|
|
+++ b/src/passivedns.h
|
|
@@ -54,6 +54,7 @@
|
|
#define IP6_PROTO_ICMP 58
|
|
|
|
#define SLL_HDR_LEN 16
|
|
+#define LOOPBACK_HDR_LEN 4
|
|
#define IP4_HEADER_LEN 20
|
|
#define IP6_HEADER_LEN 40
|
|
#define TCP_HEADER_LEN 20
|
|
--
|
|
2.37.3
|
|
|