Change in osmo-pcap[master]: client: Set snaplen to MAXIMUM_SNAPLEN

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Pau Espin Pedrol gerrit-no-reply at lists.osmocom.org
Tue Oct 9 08:07:52 UTC 2018


Pau Espin Pedrol has submitted this change and it was merged. ( https://gerrit.osmocom.org/11264 )

Change subject: client: Set snaplen to MAXIMUM_SNAPLEN
......................................................................

client: Set snaplen to MAXIMUM_SNAPLEN

Despite this value not being exported publicly, the truth is that
tcpdump and wireshark nowadays avoid processing any file with snaplen
bigger than this value:
"tcpdump: pcap_loop: invalid packet capture length 861244, bigger than
snaplen of 262144"
It also fails to set snaplen to values bigger than that:
"tcpdump -s 262145" --> "tcpdump: invalid snaplen 262145"

pcapfix also warns about wrong packet length if bigger than same value
(defined as PCAP_MAX_SNAPLEN there).

MAXIMUM_SPANPLEN is defined in tcpdump's netdissect.h and libpcap's
pcap-int.h. It is also defined as WTAP_MAX_PACKET_SIZE in
wireshark/wiretap/wtap.h (this one being the only publicly available).

Change-Id: Ib7449d5aba9da342c150704ebd0e1f09e7f7276c
---
M include/osmo-pcap/common.h
M src/osmo_client_network.c
2 files changed, 6 insertions(+), 2 deletions(-)

Approvals:
  Jenkins Builder: Verified
  Harald Welte: Looks good to me, approved



diff --git a/include/osmo-pcap/common.h b/include/osmo-pcap/common.h
index 27fd514..5d977f1 100644
--- a/include/osmo-pcap/common.h
+++ b/include/osmo-pcap/common.h
@@ -58,4 +58,9 @@
 extern int osmopcap_go_parent(struct vty *vty);
 extern int osmopcap_is_config_node(struct vty *vty, int node);
 
+/* defined in libpcap's pcap-int.h, which is not public */
+#ifndef MAXIMUM_SNAPLEN
+#define MAXIMUM_SNAPLEN	262144
+#endif
+
 #endif
diff --git a/src/osmo_client_network.c b/src/osmo_client_network.c
index 3d741a8..e900ef4 100644
--- a/src/osmo_client_network.c
+++ b/src/osmo_client_network.c
@@ -42,7 +42,6 @@
 #include <string.h>
 #include <unistd.h>
 
-
 static void _osmo_client_connect(void *_data)
 {
 	osmo_client_connect((struct osmo_pcap_client_conn *) _data);
@@ -257,7 +256,7 @@
 	hdr->version_minor = 4;
 	hdr->thiszone = 0;
 	hdr->sigfigs = 0;
-	hdr->snaplen = UINT_MAX;
+	hdr->snaplen = MAXIMUM_SNAPLEN;
 	hdr->linktype = pcap_datalink(conn->client->handle);
 
 	write_data(conn, msg);

-- 
To view, visit https://gerrit.osmocom.org/11264
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-pcap
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Ib7449d5aba9da342c150704ebd0e1f09e7f7276c
Gerrit-Change-Number: 11264
Gerrit-PatchSet: 2
Gerrit-Owner: Pau Espin Pedrol <pespin at sysmocom.de>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder (1000002)
Gerrit-Reviewer: Pau Espin Pedrol <pespin at sysmocom.de>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20181009/ce6bf7af/attachment.htm>


More information about the gerrit-log mailing list