The IP dissector should warn if not reassembling due to truncated packets or bad checksum
Summary
The GSMTAP protocol dissector in wireshark doesn't seem to be following the desired behavior when IPv4 reassembling of a fragmented packet is enabled, as per what's described in https://wiki.wireshark.org/IP_Reassembly
A small sample pcap file containing one "gsmtap_log" message with a long text spanning over 3 UDP packets can be found here: https://osmocom.org/issues/5367 https://osmocom.org/attachments/download/4784/gsmtap_ip_frag.pcap.gz
After a quick debugging session with gdb, it can be seen that fragment_add_check() in packet-ip.c is only called on the last packet, which seems to result in the fragment hashtable only containing the last pkt fragment and hence reassembler returning NULL.
Is there something wrong in packet-ip.c? or are the upper layers dissector expected to do something regarding to filling the fragment hashtable? If the former is true, then packet-ip.c should be fixed. If the later is true, documentation in https://wiki.wireshark.org/IP_Reassembly should be updated to clarify and document how to implement it, and then support to reassemble packets implemented in GSMTAP dissector.