aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2018-10-08 11:41:33 +0200
committerPau Espin Pedrol <pespin@sysmocom.de>2018-10-08 20:20:43 +0200
commit168949e119104ca1c916b3e3593ef11235380e1f (patch)
tree376a7e05fec90435cd1fe3a7022d7a06eb28b0fa /src
parentdb7be4463239a9945ed307d4af55e467a78db984 (diff)
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
Diffstat (limited to 'src')
-rw-r--r--src/osmo_client_network.c3
1 files changed, 1 insertions, 2 deletions
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 @@ void osmo_client_send_link(struct osmo_pcap_client_conn *conn)
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);