/src/suricata7/src/decode-udp.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* Copyright (C) 2007-2022 Open Information Security Foundation |
2 | | * |
3 | | * You can copy, redistribute or modify this Program under the terms of |
4 | | * the GNU General Public License version 2 as published by the Free |
5 | | * Software Foundation. |
6 | | * |
7 | | * This program is distributed in the hope that it will be useful, |
8 | | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
9 | | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
10 | | * GNU General Public License for more details. |
11 | | * |
12 | | * You should have received a copy of the GNU General Public License |
13 | | * version 2 along with this program; if not, write to the Free Software |
14 | | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA |
15 | | * 02110-1301, USA. |
16 | | */ |
17 | | |
18 | | /** |
19 | | * \file |
20 | | * |
21 | | * \author Victor Julien <victor@inliniac.net> |
22 | | */ |
23 | | |
24 | | #ifndef __DECODE_UDP_H__ |
25 | | #define __DECODE_UDP_H__ |
26 | | |
27 | 224k | #define UDP_HEADER_LEN 8 |
28 | | |
29 | | /* XXX RAW* needs to be really 'raw', so no SCNtohs there */ |
30 | 111k | #define UDP_GET_RAW_LEN(udph) SCNtohs((udph)->uh_len) |
31 | | #define UDP_GET_RAW_SRC_PORT(udph) SCNtohs((udph)->uh_sport) |
32 | | #define UDP_GET_RAW_DST_PORT(udph) SCNtohs((udph)->uh_dport) |
33 | | #define UDP_GET_RAW_SUM(udph) SCNtohs((udph)->uh_sum) |
34 | | |
35 | 111k | #define UDP_GET_LEN(p) UDP_GET_RAW_LEN(p->udph) |
36 | | #define UDP_GET_SRC_PORT(p) UDP_GET_RAW_SRC_PORT(p->udph) |
37 | | #define UDP_GET_DST_PORT(p) UDP_GET_RAW_DST_PORT(p->udph) |
38 | | #define UDP_GET_SUM(p) UDP_GET_RAW_SUM(p->udph) |
39 | | |
40 | | /* UDP header structure */ |
41 | | typedef struct UDPHdr_ |
42 | | { |
43 | | uint16_t uh_sport; /* source port */ |
44 | | uint16_t uh_dport; /* destination port */ |
45 | | uint16_t uh_len; /* length */ |
46 | | uint16_t uh_sum; /* checksum */ |
47 | | } __attribute__((__packed__)) UDPHdr; |
48 | | |
49 | 118k | #define CLEAR_UDP_PACKET(p) do { \ |
50 | 118k | (p)->level4_comp_csum = -1; \ |
51 | 118k | (p)->udph = NULL; \ |
52 | 118k | } while (0) |
53 | | |
54 | | void DecodeUDPV4RegisterTests(void); |
55 | | |
56 | | /** ------ Inline function ------ */ |
57 | | |
58 | | /** |
59 | | * \brief Calculate or valid the checksum for the UDP packet |
60 | | * |
61 | | * \param shdr Pointer to source address field from the IP packet. Used as a |
62 | | * part of the psuedoheader for computing the checksum |
63 | | * \param pkt Pointer to the start of the UDP packet |
64 | | * \param hlen Total length of the UDP packet(header + payload) |
65 | | * \param init For validation this is the UDP checksum, for calculation this |
66 | | * value should be set to 0. |
67 | | * |
68 | | * \retval csum For validation 0 will be returned for success, for calculation |
69 | | * this will be the checksum. |
70 | | */ |
71 | | static inline uint16_t UDPV4Checksum( |
72 | | const uint16_t *shdr, const uint16_t *pkt, uint16_t tlen, uint16_t init) |
73 | 444 | { |
74 | 444 | uint16_t pad = 0; |
75 | 444 | uint32_t csum = init; |
76 | | |
77 | 444 | csum += shdr[0] + shdr[1] + shdr[2] + shdr[3] + htons(17) + htons(tlen); |
78 | | |
79 | 444 | csum += pkt[0] + pkt[1] + pkt[2]; |
80 | | |
81 | 444 | tlen -= 8; |
82 | 444 | pkt += 4; |
83 | | |
84 | 1.73k | while (tlen >= 32) { |
85 | 1.29k | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3] + pkt[4] + pkt[5] + pkt[6] + |
86 | 1.29k | pkt[7] + pkt[8] + pkt[9] + pkt[10] + pkt[11] + pkt[12] + pkt[13] + |
87 | 1.29k | pkt[14] + pkt[15]; |
88 | 1.29k | tlen -= 32; |
89 | 1.29k | pkt += 16; |
90 | 1.29k | } |
91 | | |
92 | 1.10k | while(tlen >= 8) { |
93 | 664 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3]; |
94 | 664 | tlen -= 8; |
95 | 664 | pkt += 4; |
96 | 664 | } |
97 | | |
98 | 674 | while(tlen >= 4) { |
99 | 230 | csum += pkt[0] + pkt[1]; |
100 | 230 | tlen -= 4; |
101 | 230 | pkt += 2; |
102 | 230 | } |
103 | | |
104 | 578 | while (tlen > 1) { |
105 | 134 | csum += pkt[0]; |
106 | 134 | pkt += 1; |
107 | 134 | tlen -= 2; |
108 | 134 | } |
109 | | |
110 | 444 | if (tlen == 1) { |
111 | 88 | *(uint8_t *)(&pad) = (*(uint8_t *)pkt); |
112 | 88 | csum += pad; |
113 | 88 | } |
114 | | |
115 | 444 | csum = (csum >> 16) + (csum & 0x0000FFFF); |
116 | 444 | csum += (csum >> 16); |
117 | | |
118 | 444 | uint16_t csum_u16 = (uint16_t)~csum; |
119 | 444 | if (init == 0 && csum_u16 == 0) |
120 | 0 | return 0xFFFF; |
121 | 444 | else |
122 | 444 | return csum_u16; |
123 | 444 | } Unexecuted instantiation: fuzz_applayerparserparse.c:UDPV4Checksum Unexecuted instantiation: app-layer-parser.c:UDPV4Checksum Unexecuted instantiation: app-layer-rdp.c:UDPV4Checksum Unexecuted instantiation: app-layer-rfb.c:UDPV4Checksum Unexecuted instantiation: app-layer-sip.c:UDPV4Checksum Unexecuted instantiation: app-layer-smb.c:UDPV4Checksum Unexecuted instantiation: app-layer-smtp.c:UDPV4Checksum Unexecuted instantiation: app-layer-snmp.c:UDPV4Checksum Unexecuted instantiation: app-layer-ssh.c:UDPV4Checksum Unexecuted instantiation: app-layer-ssl.c:UDPV4Checksum Unexecuted instantiation: app-layer-tftp.c:UDPV4Checksum Unexecuted instantiation: detect-engine-state.c:UDPV4Checksum Unexecuted instantiation: flow.c:UDPV4Checksum Unexecuted instantiation: flow-hash.c:UDPV4Checksum Unexecuted instantiation: flow-manager.c:UDPV4Checksum Unexecuted instantiation: flow-queue.c:UDPV4Checksum Unexecuted instantiation: flow-spare-pool.c:UDPV4Checksum Unexecuted instantiation: flow-storage.c:UDPV4Checksum Unexecuted instantiation: flow-timeout.c:UDPV4Checksum Unexecuted instantiation: flow-util.c:UDPV4Checksum Unexecuted instantiation: host-timeout.c:UDPV4Checksum Unexecuted instantiation: ippair-timeout.c:UDPV4Checksum Unexecuted instantiation: output-file.c:UDPV4Checksum Unexecuted instantiation: output-filedata.c:UDPV4Checksum Unexecuted instantiation: output-flow.c:UDPV4Checksum Unexecuted instantiation: packet.c:UDPV4Checksum Unexecuted instantiation: pkt-var.c:UDPV4Checksum Unexecuted instantiation: reputation.c:UDPV4Checksum Unexecuted instantiation: runmodes.c:UDPV4Checksum Unexecuted instantiation: runmode-unix-socket.c:UDPV4Checksum Unexecuted instantiation: runmode-windivert.c:UDPV4Checksum Unexecuted instantiation: stream-tcp.c:UDPV4Checksum Unexecuted instantiation: stream-tcp-list.c:UDPV4Checksum Unexecuted instantiation: stream-tcp-reassemble.c:UDPV4Checksum Unexecuted instantiation: stream-tcp-sack.c:UDPV4Checksum Unexecuted instantiation: suricata.c:UDPV4Checksum Unexecuted instantiation: tm-modules.c:UDPV4Checksum Unexecuted instantiation: tmqh-flow.c:UDPV4Checksum Unexecuted instantiation: tmqh-packetpool.c:UDPV4Checksum Unexecuted instantiation: tm-queuehandlers.c:UDPV4Checksum Unexecuted instantiation: tm-threads.c:UDPV4Checksum Unexecuted instantiation: unix-manager.c:UDPV4Checksum Unexecuted instantiation: util-checksum.c:UDPV4Checksum Unexecuted instantiation: util-datalink.c:UDPV4Checksum Unexecuted instantiation: util-debug.c:UDPV4Checksum Unexecuted instantiation: util-decode-mime.c:UDPV4Checksum Unexecuted instantiation: util-exception-policy.c:UDPV4Checksum Unexecuted instantiation: util-file.c:UDPV4Checksum Unexecuted instantiation: util-host-os-info.c:UDPV4Checksum Unexecuted instantiation: util-ioctl.c:UDPV4Checksum Unexecuted instantiation: util-ja3.c:UDPV4Checksum Unexecuted instantiation: util-landlock.c:UDPV4Checksum Unexecuted instantiation: util-macset.c:UDPV4Checksum Unexecuted instantiation: util-mpm.c:UDPV4Checksum Unexecuted instantiation: util-print.c:UDPV4Checksum Unexecuted instantiation: util-running-modes.c:UDPV4Checksum Unexecuted instantiation: util-streaming-buffer.c:UDPV4Checksum Unexecuted instantiation: util-threshold-config.c:UDPV4Checksum Unexecuted instantiation: util-time.c:UDPV4Checksum Unexecuted instantiation: util-var.c:UDPV4Checksum Unexecuted instantiation: util-var-name.c:UDPV4Checksum Unexecuted instantiation: app-layer.c:UDPV4Checksum Unexecuted instantiation: app-layer-detect-proto.c:UDPV4Checksum Unexecuted instantiation: app-layer-dnp3.c:UDPV4Checksum Unexecuted instantiation: app-layer-dnp3-objects.c:UDPV4Checksum Unexecuted instantiation: app-layer-enip.c:UDPV4Checksum Unexecuted instantiation: app-layer-enip-common.c:UDPV4Checksum Unexecuted instantiation: app-layer-events.c:UDPV4Checksum Unexecuted instantiation: app-layer-expectation.c:UDPV4Checksum Unexecuted instantiation: app-layer-ftp.c:UDPV4Checksum Unexecuted instantiation: app-layer-frames.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp-file.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp-range.c:UDPV4Checksum Unexecuted instantiation: app-layer-http2.c:UDPV4Checksum Unexecuted instantiation: app-layer-ike.c:UDPV4Checksum Unexecuted instantiation: app-layer-krb5.c:UDPV4Checksum Unexecuted instantiation: app-layer-modbus.c:UDPV4Checksum Unexecuted instantiation: app-layer-quic.c:UDPV4Checksum Unexecuted instantiation: app-layer-mqtt.c:UDPV4Checksum Unexecuted instantiation: app-layer-nfs-tcp.c:UDPV4Checksum Unexecuted instantiation: app-layer-nfs-udp.c:UDPV4Checksum Unexecuted instantiation: app-layer-ntp.c:UDPV4Checksum Unexecuted instantiation: counters.c:UDPV4Checksum Unexecuted instantiation: datasets-string.c:UDPV4Checksum Unexecuted instantiation: decode.c:UDPV4Checksum Unexecuted instantiation: decode-erspan.c:UDPV4Checksum Unexecuted instantiation: decode-ethernet.c:UDPV4Checksum Unexecuted instantiation: decode-geneve.c:UDPV4Checksum Unexecuted instantiation: decode-icmpv4.c:UDPV4Checksum Unexecuted instantiation: decode-icmpv6.c:UDPV4Checksum Unexecuted instantiation: decode-ipv4.c:UDPV4Checksum Unexecuted instantiation: decode-ipv6.c:UDPV4Checksum Unexecuted instantiation: decode-mpls.c:UDPV4Checksum Unexecuted instantiation: decode-nsh.c:UDPV4Checksum Unexecuted instantiation: decode-ppp.c:UDPV4Checksum Unexecuted instantiation: decode-pppoe.c:UDPV4Checksum Unexecuted instantiation: decode-sctp.c:UDPV4Checksum Unexecuted instantiation: decode-tcp.c:UDPV4Checksum Unexecuted instantiation: decode-teredo.c:UDPV4Checksum Unexecuted instantiation: decode-udp.c:UDPV4Checksum Unexecuted instantiation: decode-vlan.c:UDPV4Checksum Unexecuted instantiation: decode-vntag.c:UDPV4Checksum Unexecuted instantiation: decode-vxlan.c:UDPV4Checksum Unexecuted instantiation: defrag.c:UDPV4Checksum Unexecuted instantiation: defrag-config.c:UDPV4Checksum Unexecuted instantiation: defrag-hash.c:UDPV4Checksum Unexecuted instantiation: defrag-queue.c:UDPV4Checksum Unexecuted instantiation: defrag-timeout.c:UDPV4Checksum Unexecuted instantiation: detect-content.c:UDPV4Checksum Unexecuted instantiation: detect-dsize.c:UDPV4Checksum Unexecuted instantiation: detect-engine-address.c:UDPV4Checksum Unexecuted instantiation: detect-engine-address-ipv4.c:UDPV4Checksum Unexecuted instantiation: detect-engine-address-ipv6.c:UDPV4Checksum Unexecuted instantiation: detect-engine-alert.c:UDPV4Checksum Unexecuted instantiation: detect-engine-build.c:UDPV4Checksum Unexecuted instantiation: detect-engine.c:UDPV4Checksum Unexecuted instantiation: detect-engine-content-inspection.c:UDPV4Checksum Unexecuted instantiation: detect-engine-frame.c:UDPV4Checksum Unexecuted instantiation: detect-engine-iponly.c:UDPV4Checksum Unexecuted instantiation: detect-engine-loader.c:UDPV4Checksum Unexecuted instantiation: detect-engine-mpm.c:UDPV4Checksum Unexecuted instantiation: detect-engine-payload.c:UDPV4Checksum Unexecuted instantiation: detect-engine-port.c:UDPV4Checksum Unexecuted instantiation: detect-engine-prefilter.c:UDPV4Checksum Unexecuted instantiation: detect-engine-prefilter-common.c:UDPV4Checksum Unexecuted instantiation: detect-engine-proto.c:UDPV4Checksum Unexecuted instantiation: detect-engine-register.c:UDPV4Checksum Unexecuted instantiation: detect-engine-siggroup.c:UDPV4Checksum Unexecuted instantiation: detect-engine-sigorder.c:UDPV4Checksum Unexecuted instantiation: detect-engine-tag.c:UDPV4Checksum Unexecuted instantiation: detect-engine-threshold.c:UDPV4Checksum Unexecuted instantiation: detect-engine-uint.c:UDPV4Checksum Unexecuted instantiation: detect-fast-pattern.c:UDPV4Checksum Unexecuted instantiation: detect-file-data.c:UDPV4Checksum Unexecuted instantiation: detect-filemagic.c:UDPV4Checksum Unexecuted instantiation: detect-filemd5.c:UDPV4Checksum Unexecuted instantiation: detect-filename.c:UDPV4Checksum Unexecuted instantiation: detect-filesha1.c:UDPV4Checksum Unexecuted instantiation: detect-filesha256.c:UDPV4Checksum Unexecuted instantiation: detect-filesize.c:UDPV4Checksum Unexecuted instantiation: detect-filestore.c:UDPV4Checksum Unexecuted instantiation: detect-flowbits.c:UDPV4Checksum Unexecuted instantiation: detect-flow.c:UDPV4Checksum Unexecuted instantiation: detect-flow-age.c:UDPV4Checksum Unexecuted instantiation: detect-flowint.c:UDPV4Checksum Unexecuted instantiation: detect-flowvar.c:UDPV4Checksum Unexecuted instantiation: detect-fragbits.c:UDPV4Checksum Unexecuted instantiation: detect-fragoffset.c:UDPV4Checksum Unexecuted instantiation: detect-frame.c:UDPV4Checksum Unexecuted instantiation: detect-ftpbounce.c:UDPV4Checksum Unexecuted instantiation: detect-ftpdata.c:UDPV4Checksum Unexecuted instantiation: detect-geoip.c:UDPV4Checksum Unexecuted instantiation: detect-gid.c:UDPV4Checksum Unexecuted instantiation: detect-hostbits.c:UDPV4Checksum Unexecuted instantiation: detect-http2.c:UDPV4Checksum Unexecuted instantiation: detect-http-client-body.c:UDPV4Checksum Unexecuted instantiation: detect-http-cookie.c:UDPV4Checksum Unexecuted instantiation: detect-http-header.c:UDPV4Checksum Unexecuted instantiation: detect-http-header-common.c:UDPV4Checksum Unexecuted instantiation: detect-http-header-names.c:UDPV4Checksum Unexecuted instantiation: detect-http-host.c:UDPV4Checksum Unexecuted instantiation: detect-http-location.c:UDPV4Checksum Unexecuted instantiation: detect-http-method.c:UDPV4Checksum Unexecuted instantiation: detect-http-protocol.c:UDPV4Checksum Unexecuted instantiation: detect-http-raw-header.c:UDPV4Checksum Unexecuted instantiation: detect-http-referer.c:UDPV4Checksum Unexecuted instantiation: detect-http-request-line.c:UDPV4Checksum Unexecuted instantiation: detect-http-response-line.c:UDPV4Checksum Unexecuted instantiation: detect-http-server-body.c:UDPV4Checksum Unexecuted instantiation: detect-http-server.c:UDPV4Checksum Unexecuted instantiation: detect-http-start.c:UDPV4Checksum Unexecuted instantiation: detect-http-stat-code.c:UDPV4Checksum Unexecuted instantiation: detect-http-stat-msg.c:UDPV4Checksum Unexecuted instantiation: detect-http-ua.c:UDPV4Checksum Unexecuted instantiation: detect-http-uri.c:UDPV4Checksum Unexecuted instantiation: detect-icmp-id.c:UDPV4Checksum Unexecuted instantiation: detect-icmp-seq.c:UDPV4Checksum Unexecuted instantiation: detect-icmpv4hdr.c:UDPV4Checksum Unexecuted instantiation: detect-icmpv6hdr.c:UDPV4Checksum Unexecuted instantiation: detect-icmpv6-mtu.c:UDPV4Checksum Unexecuted instantiation: detect-icode.c:UDPV4Checksum Unexecuted instantiation: detect-id.c:UDPV4Checksum Unexecuted instantiation: detect-ike-exch-type.c:UDPV4Checksum Unexecuted instantiation: detect-ike-spi.c:UDPV4Checksum Unexecuted instantiation: detect-ike-vendor.c:UDPV4Checksum Unexecuted instantiation: detect-ike-chosen-sa.c:UDPV4Checksum Unexecuted instantiation: detect-ike-key-exchange-payload-length.c:UDPV4Checksum Unexecuted instantiation: detect-ike-nonce-payload-length.c:UDPV4Checksum Unexecuted instantiation: detect-ike-nonce-payload.c:UDPV4Checksum Unexecuted instantiation: detect-ike-key-exchange-payload.c:UDPV4Checksum Unexecuted instantiation: detect-ipaddr.c:UDPV4Checksum Unexecuted instantiation: detect-ipopts.c:UDPV4Checksum Unexecuted instantiation: detect-ipproto.c:UDPV4Checksum Unexecuted instantiation: detect-iprep.c:UDPV4Checksum Unexecuted instantiation: detect-ipv4hdr.c:UDPV4Checksum Unexecuted instantiation: detect-ipv6hdr.c:UDPV4Checksum Unexecuted instantiation: detect-isdataat.c:UDPV4Checksum Unexecuted instantiation: detect-itype.c:UDPV4Checksum Unexecuted instantiation: detect-ja4-hash.c:UDPV4Checksum Unexecuted instantiation: detect-krb5-cname.c:UDPV4Checksum Unexecuted instantiation: detect-krb5-errcode.c:UDPV4Checksum Unexecuted instantiation: detect-krb5-msgtype.c:UDPV4Checksum Unexecuted instantiation: detect-krb5-sname.c:UDPV4Checksum Unexecuted instantiation: detect-krb5-ticket-encryption.c:UDPV4Checksum Unexecuted instantiation: detect-l3proto.c:UDPV4Checksum Unexecuted instantiation: detect-lua.c:UDPV4Checksum Unexecuted instantiation: detect-mark.c:UDPV4Checksum Unexecuted instantiation: detect-metadata.c:UDPV4Checksum Unexecuted instantiation: detect-modbus.c:UDPV4Checksum Unexecuted instantiation: detect-quic-sni.c:UDPV4Checksum Unexecuted instantiation: detect-quic-ua.c:UDPV4Checksum Unexecuted instantiation: detect-quic-version.c:UDPV4Checksum Unexecuted instantiation: detect-quic-cyu-hash.c:UDPV4Checksum Unexecuted instantiation: detect-quic-cyu-string.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-connack-sessionpresent.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-connect-clientid.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-connect-flags.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-connect-password.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-connect-username.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-connect-willmessage.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-connect-willtopic.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-flags.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-protocol-version.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-publish-message.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-publish-topic.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-qos.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-reason-code.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-subscribe-topic.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-type.c:UDPV4Checksum Unexecuted instantiation: detect-mqtt-unsubscribe-topic.c:UDPV4Checksum Unexecuted instantiation: detect-msg.c:UDPV4Checksum Unexecuted instantiation: detect-nfs-procedure.c:UDPV4Checksum Unexecuted instantiation: detect-nfs-version.c:UDPV4Checksum Unexecuted instantiation: detect-noalert.c:UDPV4Checksum Unexecuted instantiation: detect-nocase.c:UDPV4Checksum Unexecuted instantiation: detect-offset.c:UDPV4Checksum Unexecuted instantiation: detect-parse.c:UDPV4Checksum Unexecuted instantiation: detect-pcre.c:UDPV4Checksum Unexecuted instantiation: detect-pkt-data.c:UDPV4Checksum Unexecuted instantiation: detect-pktvar.c:UDPV4Checksum Unexecuted instantiation: detect-prefilter.c:UDPV4Checksum Unexecuted instantiation: detect-priority.c:UDPV4Checksum Unexecuted instantiation: detect-rawbytes.c:UDPV4Checksum Unexecuted instantiation: detect-reference.c:UDPV4Checksum Unexecuted instantiation: detect-replace.c:UDPV4Checksum Unexecuted instantiation: detect-requires.c:UDPV4Checksum Unexecuted instantiation: detect-rev.c:UDPV4Checksum Unexecuted instantiation: detect-rfb-name.c:UDPV4Checksum Unexecuted instantiation: detect-rfb-secresult.c:UDPV4Checksum Unexecuted instantiation: detect-rfb-sectype.c:UDPV4Checksum Unexecuted instantiation: detect-rpc.c:UDPV4Checksum Unexecuted instantiation: detect-sameip.c:UDPV4Checksum Unexecuted instantiation: detect-sid.c:UDPV4Checksum Unexecuted instantiation: detect-sip-method.c:UDPV4Checksum Unexecuted instantiation: detect-sip-protocol.c:UDPV4Checksum Unexecuted instantiation: detect-sip-request-line.c:UDPV4Checksum Unexecuted instantiation: detect-sip-response-line.c:UDPV4Checksum Unexecuted instantiation: detect-sip-stat-code.c:UDPV4Checksum Unexecuted instantiation: detect-sip-stat-msg.c:UDPV4Checksum Unexecuted instantiation: detect-sip-uri.c:UDPV4Checksum Unexecuted instantiation: detect-smb-ntlmssp.c:UDPV4Checksum Unexecuted instantiation: detect-smb-share.c:UDPV4Checksum Unexecuted instantiation: detect-snmp-community.c:UDPV4Checksum Unexecuted instantiation: detect-snmp-pdu_type.c:UDPV4Checksum Unexecuted instantiation: detect-snmp-usm.c:UDPV4Checksum Unexecuted instantiation: detect-snmp-version.c:UDPV4Checksum Unexecuted instantiation: detect-dhcp-leasetime.c:UDPV4Checksum Unexecuted instantiation: detect-dhcp-rebinding-time.c:UDPV4Checksum Unexecuted instantiation: detect-dhcp-renewal-time.c:UDPV4Checksum Unexecuted instantiation: detect-ssh-hassh.c:UDPV4Checksum Unexecuted instantiation: detect-ssh-hassh-server.c:UDPV4Checksum Unexecuted instantiation: detect-ssh-hassh-server-string.c:UDPV4Checksum Unexecuted instantiation: detect-ssh-hassh-string.c:UDPV4Checksum Unexecuted instantiation: detect-ssh-proto.c:UDPV4Checksum Unexecuted instantiation: detect-ssh-proto-version.c:UDPV4Checksum Unexecuted instantiation: detect-ssh-software.c:UDPV4Checksum Unexecuted instantiation: detect-ssh-software-version.c:UDPV4Checksum Unexecuted instantiation: detect-ssl-state.c:UDPV4Checksum Unexecuted instantiation: detect-ssl-version.c:UDPV4Checksum Unexecuted instantiation: detect-stream_size.c:UDPV4Checksum Unexecuted instantiation: detect-tag.c:UDPV4Checksum Unexecuted instantiation: detect-target.c:UDPV4Checksum Unexecuted instantiation: detect-tcp-ack.c:UDPV4Checksum Unexecuted instantiation: detect-tcp-flags.c:UDPV4Checksum Unexecuted instantiation: detect-tcphdr.c:UDPV4Checksum Unexecuted instantiation: detect-tcpmss.c:UDPV4Checksum Unexecuted instantiation: detect-tcp-seq.c:UDPV4Checksum Unexecuted instantiation: detect-tcp-window.c:UDPV4Checksum Unexecuted instantiation: detect-template2.c:UDPV4Checksum Unexecuted instantiation: detect-template.c:UDPV4Checksum Unexecuted instantiation: detect-template-rust-buffer.c:UDPV4Checksum Unexecuted instantiation: detect-threshold.c:UDPV4Checksum Unexecuted instantiation: detect-tls.c:UDPV4Checksum Unexecuted instantiation: detect-tls-cert-fingerprint.c:UDPV4Checksum Unexecuted instantiation: detect-tls-cert-issuer.c:UDPV4Checksum Unexecuted instantiation: detect-tls-certs.c:UDPV4Checksum Unexecuted instantiation: detect-tls-cert-serial.c:UDPV4Checksum Unexecuted instantiation: detect-tls-cert-subject.c:UDPV4Checksum Unexecuted instantiation: detect-tls-cert-validity.c:UDPV4Checksum Unexecuted instantiation: detect-tls-ja3-hash.c:UDPV4Checksum Unexecuted instantiation: detect-tls-ja3s-hash.c:UDPV4Checksum Unexecuted instantiation: detect-tls-ja3s-string.c:UDPV4Checksum Unexecuted instantiation: detect-tls-ja3-string.c:UDPV4Checksum Unexecuted instantiation: detect-tls-sni.c:UDPV4Checksum Unexecuted instantiation: detect-tls-version.c:UDPV4Checksum Unexecuted instantiation: detect-tls-random.c:UDPV4Checksum Unexecuted instantiation: detect-tos.c:UDPV4Checksum Unexecuted instantiation: detect-transform-casechange.c:UDPV4Checksum Unexecuted instantiation: detect-transform-compress-whitespace.c:UDPV4Checksum Unexecuted instantiation: detect-transform-dotprefix.c:UDPV4Checksum Unexecuted instantiation: detect-transform-header-lowercase.c:UDPV4Checksum Unexecuted instantiation: detect-transform-md5.c:UDPV4Checksum Unexecuted instantiation: detect-transform-pcrexform.c:UDPV4Checksum Unexecuted instantiation: detect-transform-sha1.c:UDPV4Checksum Unexecuted instantiation: detect-transform-sha256.c:UDPV4Checksum Unexecuted instantiation: detect-transform-strip-pseudo-headers.c:UDPV4Checksum Unexecuted instantiation: detect-transform-strip-whitespace.c:UDPV4Checksum Unexecuted instantiation: detect-transform-urldecode.c:UDPV4Checksum Unexecuted instantiation: detect-transform-xor.c:UDPV4Checksum Unexecuted instantiation: detect-ttl.c:UDPV4Checksum Unexecuted instantiation: detect-udphdr.c:UDPV4Checksum Unexecuted instantiation: detect-uricontent.c:UDPV4Checksum Unexecuted instantiation: detect-urilen.c:UDPV4Checksum Unexecuted instantiation: detect-within.c:UDPV4Checksum Unexecuted instantiation: detect-xbits.c:UDPV4Checksum Unexecuted instantiation: flow-bit.c:UDPV4Checksum Unexecuted instantiation: flow-bypass.c:UDPV4Checksum Unexecuted instantiation: flow-var.c:UDPV4Checksum Unexecuted instantiation: flow-worker.c:UDPV4Checksum Unexecuted instantiation: host-bit.c:UDPV4Checksum Unexecuted instantiation: host.c:UDPV4Checksum Unexecuted instantiation: host-queue.c:UDPV4Checksum Unexecuted instantiation: host-storage.c:UDPV4Checksum Unexecuted instantiation: ippair-bit.c:UDPV4Checksum Unexecuted instantiation: ippair.c:UDPV4Checksum Unexecuted instantiation: ippair-queue.c:UDPV4Checksum Unexecuted instantiation: ippair-storage.c:UDPV4Checksum Unexecuted instantiation: output.c:UDPV4Checksum Unexecuted instantiation: output-eve-stream.c:UDPV4Checksum Unexecuted instantiation: output-filestore.c:UDPV4Checksum Unexecuted instantiation: output-json-alert.c:UDPV4Checksum Unexecuted instantiation: output-json-anomaly.c:UDPV4Checksum Unexecuted instantiation: output-json-bittorrent-dht.c:UDPV4Checksum Unexecuted instantiation: output-json.c:UDPV4Checksum Unexecuted instantiation: output-json-common.c:UDPV4Checksum Unexecuted instantiation: output-json-dcerpc.c:UDPV4Checksum Unexecuted instantiation: output-json-dhcp.c:UDPV4Checksum Unexecuted instantiation: output-json-dnp3.c:UDPV4Checksum Unexecuted instantiation: output-json-dnp3-objects.c:UDPV4Checksum Unexecuted instantiation: output-json-dns.c:UDPV4Checksum Unexecuted instantiation: output-json-drop.c:UDPV4Checksum Unexecuted instantiation: output-json-email-common.c:UDPV4Checksum Unexecuted instantiation: output-json-file.c:UDPV4Checksum Unexecuted instantiation: output-json-flow.c:UDPV4Checksum Unexecuted instantiation: output-json-frame.c:UDPV4Checksum Unexecuted instantiation: output-json-ftp.c:UDPV4Checksum Unexecuted instantiation: output-json-http2.c:UDPV4Checksum Unexecuted instantiation: output-json-http.c:UDPV4Checksum Unexecuted instantiation: output-json-ike.c:UDPV4Checksum Unexecuted instantiation: output-json-krb5.c:UDPV4Checksum Unexecuted instantiation: output-json-metadata.c:UDPV4Checksum Unexecuted instantiation: output-json-modbus.c:UDPV4Checksum Unexecuted instantiation: output-json-quic.c:UDPV4Checksum Unexecuted instantiation: output-json-mqtt.c:UDPV4Checksum Unexecuted instantiation: output-json-netflow.c:UDPV4Checksum Unexecuted instantiation: output-json-nfs.c:UDPV4Checksum Unexecuted instantiation: output-json-pgsql.c:UDPV4Checksum Unexecuted instantiation: output-json-rdp.c:UDPV4Checksum Unexecuted instantiation: output-json-rfb.c:UDPV4Checksum Unexecuted instantiation: output-json-sip.c:UDPV4Checksum Unexecuted instantiation: output-json-smb.c:UDPV4Checksum Unexecuted instantiation: output-json-smtp.c:UDPV4Checksum Unexecuted instantiation: output-json-snmp.c:UDPV4Checksum Unexecuted instantiation: output-json-ssh.c:UDPV4Checksum Unexecuted instantiation: output-json-stats.c:UDPV4Checksum Unexecuted instantiation: output-json-template.c:UDPV4Checksum Unexecuted instantiation: output-json-tftp.c:UDPV4Checksum Unexecuted instantiation: output-json-tls.c:UDPV4Checksum Unexecuted instantiation: output-eve-syslog.c:UDPV4Checksum Unexecuted instantiation: output-packet.c:UDPV4Checksum Unexecuted instantiation: output-stats.c:UDPV4Checksum Unexecuted instantiation: output-streaming.c:UDPV4Checksum Unexecuted instantiation: output-tx.c:UDPV4Checksum Unexecuted instantiation: packet-queue.c:UDPV4Checksum Unexecuted instantiation: respond-reject.c:UDPV4Checksum Unexecuted instantiation: respond-reject-libnet11.c:UDPV4Checksum Unexecuted instantiation: runmode-af-packet.c:UDPV4Checksum Unexecuted instantiation: runmode-af-xdp.c:UDPV4Checksum Unexecuted instantiation: runmode-dpdk.c:UDPV4Checksum Unexecuted instantiation: runmode-erf-dag.c:UDPV4Checksum Unexecuted instantiation: runmode-erf-file.c:UDPV4Checksum Unexecuted instantiation: runmode-ipfw.c:UDPV4Checksum Unexecuted instantiation: runmode-napatech.c:UDPV4Checksum Unexecuted instantiation: runmode-netmap.c:UDPV4Checksum Unexecuted instantiation: runmode-nflog.c:UDPV4Checksum Unexecuted instantiation: runmode-nfq.c:UDPV4Checksum Unexecuted instantiation: runmode-pcap.c:UDPV4Checksum Unexecuted instantiation: runmode-pcap-file.c:UDPV4Checksum Unexecuted instantiation: runmode-pfring.c:UDPV4Checksum Unexecuted instantiation: rust-context.c:UDPV4Checksum Unexecuted instantiation: source-af-packet.c:UDPV4Checksum Unexecuted instantiation: source-af-xdp.c:UDPV4Checksum Unexecuted instantiation: source-dpdk.c:UDPV4Checksum Unexecuted instantiation: source-erf-dag.c:UDPV4Checksum Unexecuted instantiation: source-erf-file.c:UDPV4Checksum Unexecuted instantiation: source-ipfw.c:UDPV4Checksum Unexecuted instantiation: source-napatech.c:UDPV4Checksum Unexecuted instantiation: source-netmap.c:UDPV4Checksum Unexecuted instantiation: source-nflog.c:UDPV4Checksum Unexecuted instantiation: source-nfq.c:UDPV4Checksum Unexecuted instantiation: source-pcap.c:UDPV4Checksum Unexecuted instantiation: source-pcap-file.c:UDPV4Checksum Unexecuted instantiation: source-pcap-file-directory-helper.c:UDPV4Checksum Unexecuted instantiation: source-pcap-file-helper.c:UDPV4Checksum Unexecuted instantiation: source-pfring.c:UDPV4Checksum Unexecuted instantiation: source-windivert.c:UDPV4Checksum Unexecuted instantiation: stream-tcp-inline.c:UDPV4Checksum Unexecuted instantiation: tmqh-simple.c:UDPV4Checksum Unexecuted instantiation: util-action.c:UDPV4Checksum Unexecuted instantiation: util-classification-config.c:UDPV4Checksum Unexecuted instantiation: util-detect.c:UDPV4Checksum Unexecuted instantiation: util-file-decompression.c:UDPV4Checksum Unexecuted instantiation: util-file-swf-decompression.c:UDPV4Checksum Unexecuted instantiation: util-logopenfile.c:UDPV4Checksum Unexecuted instantiation: util-mpm-ac-bs.c:UDPV4Checksum Unexecuted instantiation: util-mpm-ac.c:UDPV4Checksum Unexecuted instantiation: util-mpm-ac-ks.c:UDPV4Checksum Unexecuted instantiation: util-reference-config.c:UDPV4Checksum Unexecuted instantiation: util-rule-vars.c:UDPV4Checksum Unexecuted instantiation: util-runmodes.c:UDPV4Checksum Unexecuted instantiation: util-port-interval-tree.c:UDPV4Checksum Unexecuted instantiation: alert-debuglog.c:UDPV4Checksum Unexecuted instantiation: alert-fastlog.c:UDPV4Checksum Unexecuted instantiation: alert-syslog.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp-body.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp-xff.c:UDPV4Checksum Unexecuted instantiation: app-layer-register.c:UDPV4Checksum Unexecuted instantiation: decode-chdlc.c:UDPV4Checksum Unexecuted instantiation: decode-esp.c:UDPV4Checksum Unexecuted instantiation: decode-gre.c:UDPV4Checksum Unexecuted instantiation: decode-null.c:UDPV4Checksum Unexecuted instantiation: decode-raw.c:UDPV4Checksum Unexecuted instantiation: decode-sll.c:UDPV4Checksum Unexecuted instantiation: detect-app-layer-event.c:UDPV4Checksum Unexecuted instantiation: detect-app-layer-protocol.c:UDPV4Checksum Unexecuted instantiation: detect-asn1.c:UDPV4Checksum Unexecuted instantiation: detect-base64-data.c:UDPV4Checksum Unexecuted instantiation: detect-base64-decode.c:UDPV4Checksum Unexecuted instantiation: detect-bsize.c:UDPV4Checksum Unexecuted instantiation: detect-bypass.c:UDPV4Checksum Unexecuted instantiation: detect-byte.c:UDPV4Checksum Unexecuted instantiation: detect-byte-extract.c:UDPV4Checksum Unexecuted instantiation: detect-bytejump.c:UDPV4Checksum Unexecuted instantiation: detect-bytemath.c:UDPV4Checksum Unexecuted instantiation: detect-bytetest.c:UDPV4Checksum Unexecuted instantiation: detect.c:UDPV4Checksum Unexecuted instantiation: detect-cipservice.c:UDPV4Checksum Unexecuted instantiation: detect-classtype.c:UDPV4Checksum Unexecuted instantiation: detect-config.c:UDPV4Checksum detect-csum.c:UDPV4Checksum Line | Count | Source | 73 | 444 | { | 74 | 444 | uint16_t pad = 0; | 75 | 444 | uint32_t csum = init; | 76 | | | 77 | 444 | csum += shdr[0] + shdr[1] + shdr[2] + shdr[3] + htons(17) + htons(tlen); | 78 | | | 79 | 444 | csum += pkt[0] + pkt[1] + pkt[2]; | 80 | | | 81 | 444 | tlen -= 8; | 82 | 444 | pkt += 4; | 83 | | | 84 | 1.73k | while (tlen >= 32) { | 85 | 1.29k | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3] + pkt[4] + pkt[5] + pkt[6] + | 86 | 1.29k | pkt[7] + pkt[8] + pkt[9] + pkt[10] + pkt[11] + pkt[12] + pkt[13] + | 87 | 1.29k | pkt[14] + pkt[15]; | 88 | 1.29k | tlen -= 32; | 89 | 1.29k | pkt += 16; | 90 | 1.29k | } | 91 | | | 92 | 1.10k | while(tlen >= 8) { | 93 | 664 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3]; | 94 | 664 | tlen -= 8; | 95 | 664 | pkt += 4; | 96 | 664 | } | 97 | | | 98 | 674 | while(tlen >= 4) { | 99 | 230 | csum += pkt[0] + pkt[1]; | 100 | 230 | tlen -= 4; | 101 | 230 | pkt += 2; | 102 | 230 | } | 103 | | | 104 | 578 | while (tlen > 1) { | 105 | 134 | csum += pkt[0]; | 106 | 134 | pkt += 1; | 107 | 134 | tlen -= 2; | 108 | 134 | } | 109 | | | 110 | 444 | if (tlen == 1) { | 111 | 88 | *(uint8_t *)(&pad) = (*(uint8_t *)pkt); | 112 | 88 | csum += pad; | 113 | 88 | } | 114 | | | 115 | 444 | csum = (csum >> 16) + (csum & 0x0000FFFF); | 116 | 444 | csum += (csum >> 16); | 117 | | | 118 | 444 | uint16_t csum_u16 = (uint16_t)~csum; | 119 | 444 | if (init == 0 && csum_u16 == 0) | 120 | 0 | return 0xFFFF; | 121 | 444 | else | 122 | 444 | return csum_u16; | 123 | 444 | } |
Unexecuted instantiation: detect-datarep.c:UDPV4Checksum Unexecuted instantiation: detect-dataset.c:UDPV4Checksum Unexecuted instantiation: detect-dce-iface.c:UDPV4Checksum Unexecuted instantiation: detect-dce-opnum.c:UDPV4Checksum Unexecuted instantiation: detect-dce-stub-data.c:UDPV4Checksum Unexecuted instantiation: detect-depth.c:UDPV4Checksum Unexecuted instantiation: detect-detection-filter.c:UDPV4Checksum Unexecuted instantiation: detect-distance.c:UDPV4Checksum Unexecuted instantiation: detect-dnp3.c:UDPV4Checksum Unexecuted instantiation: detect-dns-opcode.c:UDPV4Checksum Unexecuted instantiation: detect-dns-query.c:UDPV4Checksum Unexecuted instantiation: detect-engine-analyzer.c:UDPV4Checksum Unexecuted instantiation: detect-engine-enip.c:UDPV4Checksum Unexecuted instantiation: detect-engine-event.c:UDPV4Checksum Unexecuted instantiation: detect-engine-file.c:UDPV4Checksum Unexecuted instantiation: detect-file-hash-common.c:UDPV4Checksum Unexecuted instantiation: detect-http-accept.c:UDPV4Checksum Unexecuted instantiation: detect-http-accept-enc.c:UDPV4Checksum Unexecuted instantiation: detect-http-accept-lang.c:UDPV4Checksum Unexecuted instantiation: detect-http-connection.c:UDPV4Checksum Unexecuted instantiation: detect-http-content-len.c:UDPV4Checksum Unexecuted instantiation: detect-http-content-type.c:UDPV4Checksum Unexecuted instantiation: log-httplog.c:UDPV4Checksum Unexecuted instantiation: log-pcap.c:UDPV4Checksum Unexecuted instantiation: log-stats.c:UDPV4Checksum Unexecuted instantiation: log-tcp-data.c:UDPV4Checksum Unexecuted instantiation: log-tlslog.c:UDPV4Checksum Unexecuted instantiation: log-tlsstore.c:UDPV4Checksum Unexecuted instantiation: stream.c:UDPV4Checksum Unexecuted instantiation: fuzz_sigpcap_aware.c:UDPV4Checksum Unexecuted instantiation: util-unittest-helper.c:UDPV4Checksum Unexecuted instantiation: fuzz_decodepcapfile.c:UDPV4Checksum Unexecuted instantiation: fuzz_mimedecparseline.c:UDPV4Checksum Unexecuted instantiation: fuzz_siginit.c:UDPV4Checksum Unexecuted instantiation: fuzz_sigpcap.c:UDPV4Checksum Unexecuted instantiation: fuzz_applayerprotodetectgetproto.c:UDPV4Checksum Unexecuted instantiation: fuzz_predefpcap_aware.c:UDPV4Checksum |
124 | | |
125 | | /** |
126 | | * \brief Calculate or valid the checksum for the UDP packet |
127 | | * |
128 | | * \param shdr Pointer to source address field from the IPV6 packet. Used as a |
129 | | * part of the psuedoheader for computing the checksum |
130 | | * \param pkt Pointer to the start of the UDP packet |
131 | | * \param tlen Total length of the UDP packet(header + payload) |
132 | | * \param init For validation this is the UDP checksum, for calculation this |
133 | | * value should be set to 0. |
134 | | * |
135 | | * \retval csum For validation 0 will be returned for success, for calculation |
136 | | * this will be the checksum. |
137 | | */ |
138 | | static inline uint16_t UDPV6Checksum( |
139 | | const uint16_t *shdr, const uint16_t *pkt, uint16_t tlen, uint16_t init) |
140 | 46 | { |
141 | 46 | uint16_t pad = 0; |
142 | 46 | uint32_t csum = init; |
143 | | |
144 | 46 | csum += shdr[0] + shdr[1] + shdr[2] + shdr[3] + shdr[4] + shdr[5] + shdr[6] + |
145 | 46 | shdr[7] + shdr[8] + shdr[9] + shdr[10] + shdr[11] + shdr[12] + |
146 | 46 | shdr[13] + shdr[14] + shdr[15] + htons(17) + htons(tlen); |
147 | | |
148 | 46 | csum += pkt[0] + pkt[1] + pkt[2]; |
149 | | |
150 | 46 | tlen -= 8; |
151 | 46 | pkt += 4; |
152 | | |
153 | 64 | while (tlen >= 32) { |
154 | 18 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3] + pkt[4] + pkt[5] + pkt[6] + |
155 | 18 | pkt[7] + pkt[8] + pkt[9] + pkt[10] + pkt[11] + pkt[12] + pkt[13] + |
156 | 18 | pkt[14] + pkt[15]; |
157 | 18 | tlen -= 32; |
158 | 18 | pkt += 16; |
159 | 18 | } |
160 | | |
161 | 173 | while(tlen >= 8) { |
162 | 127 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3]; |
163 | 127 | tlen -= 8; |
164 | 127 | pkt += 4; |
165 | 127 | } |
166 | | |
167 | 67 | while(tlen >= 4) { |
168 | 21 | csum += pkt[0] + pkt[1]; |
169 | 21 | tlen -= 4; |
170 | 21 | pkt += 2; |
171 | 21 | } |
172 | | |
173 | 65 | while (tlen > 1) { |
174 | 19 | csum += pkt[0]; |
175 | 19 | pkt += 1; |
176 | 19 | tlen -= 2; |
177 | 19 | } |
178 | | |
179 | 46 | if (tlen == 1) { |
180 | 17 | *(uint8_t *)(&pad) = (*(uint8_t *)pkt); |
181 | 17 | csum += pad; |
182 | 17 | } |
183 | | |
184 | 46 | csum = (csum >> 16) + (csum & 0x0000FFFF); |
185 | 46 | csum += (csum >> 16); |
186 | | |
187 | 46 | uint16_t csum_u16 = (uint16_t)~csum; |
188 | 46 | if (init == 0 && csum_u16 == 0) |
189 | 0 | return 0xFFFF; |
190 | 46 | else |
191 | 46 | return csum_u16; |
192 | 46 | } Unexecuted instantiation: fuzz_applayerparserparse.c:UDPV6Checksum Unexecuted instantiation: app-layer-parser.c:UDPV6Checksum Unexecuted instantiation: app-layer-rdp.c:UDPV6Checksum Unexecuted instantiation: app-layer-rfb.c:UDPV6Checksum Unexecuted instantiation: app-layer-sip.c:UDPV6Checksum Unexecuted instantiation: app-layer-smb.c:UDPV6Checksum Unexecuted instantiation: app-layer-smtp.c:UDPV6Checksum Unexecuted instantiation: app-layer-snmp.c:UDPV6Checksum Unexecuted instantiation: app-layer-ssh.c:UDPV6Checksum Unexecuted instantiation: app-layer-ssl.c:UDPV6Checksum Unexecuted instantiation: app-layer-tftp.c:UDPV6Checksum Unexecuted instantiation: detect-engine-state.c:UDPV6Checksum Unexecuted instantiation: flow.c:UDPV6Checksum Unexecuted instantiation: flow-hash.c:UDPV6Checksum Unexecuted instantiation: flow-manager.c:UDPV6Checksum Unexecuted instantiation: flow-queue.c:UDPV6Checksum Unexecuted instantiation: flow-spare-pool.c:UDPV6Checksum Unexecuted instantiation: flow-storage.c:UDPV6Checksum Unexecuted instantiation: flow-timeout.c:UDPV6Checksum Unexecuted instantiation: flow-util.c:UDPV6Checksum Unexecuted instantiation: host-timeout.c:UDPV6Checksum Unexecuted instantiation: ippair-timeout.c:UDPV6Checksum Unexecuted instantiation: output-file.c:UDPV6Checksum Unexecuted instantiation: output-filedata.c:UDPV6Checksum Unexecuted instantiation: output-flow.c:UDPV6Checksum Unexecuted instantiation: packet.c:UDPV6Checksum Unexecuted instantiation: pkt-var.c:UDPV6Checksum Unexecuted instantiation: reputation.c:UDPV6Checksum Unexecuted instantiation: runmodes.c:UDPV6Checksum Unexecuted instantiation: runmode-unix-socket.c:UDPV6Checksum Unexecuted instantiation: runmode-windivert.c:UDPV6Checksum Unexecuted instantiation: stream-tcp.c:UDPV6Checksum Unexecuted instantiation: stream-tcp-list.c:UDPV6Checksum Unexecuted instantiation: stream-tcp-reassemble.c:UDPV6Checksum Unexecuted instantiation: stream-tcp-sack.c:UDPV6Checksum Unexecuted instantiation: suricata.c:UDPV6Checksum Unexecuted instantiation: tm-modules.c:UDPV6Checksum Unexecuted instantiation: tmqh-flow.c:UDPV6Checksum Unexecuted instantiation: tmqh-packetpool.c:UDPV6Checksum Unexecuted instantiation: tm-queuehandlers.c:UDPV6Checksum Unexecuted instantiation: tm-threads.c:UDPV6Checksum Unexecuted instantiation: unix-manager.c:UDPV6Checksum Unexecuted instantiation: util-checksum.c:UDPV6Checksum Unexecuted instantiation: util-datalink.c:UDPV6Checksum Unexecuted instantiation: util-debug.c:UDPV6Checksum Unexecuted instantiation: util-decode-mime.c:UDPV6Checksum Unexecuted instantiation: util-exception-policy.c:UDPV6Checksum Unexecuted instantiation: util-file.c:UDPV6Checksum Unexecuted instantiation: util-host-os-info.c:UDPV6Checksum Unexecuted instantiation: util-ioctl.c:UDPV6Checksum Unexecuted instantiation: util-ja3.c:UDPV6Checksum Unexecuted instantiation: util-landlock.c:UDPV6Checksum Unexecuted instantiation: util-macset.c:UDPV6Checksum Unexecuted instantiation: util-mpm.c:UDPV6Checksum Unexecuted instantiation: util-print.c:UDPV6Checksum Unexecuted instantiation: util-running-modes.c:UDPV6Checksum Unexecuted instantiation: util-streaming-buffer.c:UDPV6Checksum Unexecuted instantiation: util-threshold-config.c:UDPV6Checksum Unexecuted instantiation: util-time.c:UDPV6Checksum Unexecuted instantiation: util-var.c:UDPV6Checksum Unexecuted instantiation: util-var-name.c:UDPV6Checksum Unexecuted instantiation: app-layer.c:UDPV6Checksum Unexecuted instantiation: app-layer-detect-proto.c:UDPV6Checksum Unexecuted instantiation: app-layer-dnp3.c:UDPV6Checksum Unexecuted instantiation: app-layer-dnp3-objects.c:UDPV6Checksum Unexecuted instantiation: app-layer-enip.c:UDPV6Checksum Unexecuted instantiation: app-layer-enip-common.c:UDPV6Checksum Unexecuted instantiation: app-layer-events.c:UDPV6Checksum Unexecuted instantiation: app-layer-expectation.c:UDPV6Checksum Unexecuted instantiation: app-layer-ftp.c:UDPV6Checksum Unexecuted instantiation: app-layer-frames.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp-file.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp-range.c:UDPV6Checksum Unexecuted instantiation: app-layer-http2.c:UDPV6Checksum Unexecuted instantiation: app-layer-ike.c:UDPV6Checksum Unexecuted instantiation: app-layer-krb5.c:UDPV6Checksum Unexecuted instantiation: app-layer-modbus.c:UDPV6Checksum Unexecuted instantiation: app-layer-quic.c:UDPV6Checksum Unexecuted instantiation: app-layer-mqtt.c:UDPV6Checksum Unexecuted instantiation: app-layer-nfs-tcp.c:UDPV6Checksum Unexecuted instantiation: app-layer-nfs-udp.c:UDPV6Checksum Unexecuted instantiation: app-layer-ntp.c:UDPV6Checksum Unexecuted instantiation: counters.c:UDPV6Checksum Unexecuted instantiation: datasets-string.c:UDPV6Checksum Unexecuted instantiation: decode.c:UDPV6Checksum Unexecuted instantiation: decode-erspan.c:UDPV6Checksum Unexecuted instantiation: decode-ethernet.c:UDPV6Checksum Unexecuted instantiation: decode-geneve.c:UDPV6Checksum Unexecuted instantiation: decode-icmpv4.c:UDPV6Checksum Unexecuted instantiation: decode-icmpv6.c:UDPV6Checksum Unexecuted instantiation: decode-ipv4.c:UDPV6Checksum Unexecuted instantiation: decode-ipv6.c:UDPV6Checksum Unexecuted instantiation: decode-mpls.c:UDPV6Checksum Unexecuted instantiation: decode-nsh.c:UDPV6Checksum Unexecuted instantiation: decode-ppp.c:UDPV6Checksum Unexecuted instantiation: decode-pppoe.c:UDPV6Checksum Unexecuted instantiation: decode-sctp.c:UDPV6Checksum Unexecuted instantiation: decode-tcp.c:UDPV6Checksum Unexecuted instantiation: decode-teredo.c:UDPV6Checksum Unexecuted instantiation: decode-udp.c:UDPV6Checksum Unexecuted instantiation: decode-vlan.c:UDPV6Checksum Unexecuted instantiation: decode-vntag.c:UDPV6Checksum Unexecuted instantiation: decode-vxlan.c:UDPV6Checksum Unexecuted instantiation: defrag.c:UDPV6Checksum Unexecuted instantiation: defrag-config.c:UDPV6Checksum Unexecuted instantiation: defrag-hash.c:UDPV6Checksum Unexecuted instantiation: defrag-queue.c:UDPV6Checksum Unexecuted instantiation: defrag-timeout.c:UDPV6Checksum Unexecuted instantiation: detect-content.c:UDPV6Checksum Unexecuted instantiation: detect-dsize.c:UDPV6Checksum Unexecuted instantiation: detect-engine-address.c:UDPV6Checksum Unexecuted instantiation: detect-engine-address-ipv4.c:UDPV6Checksum Unexecuted instantiation: detect-engine-address-ipv6.c:UDPV6Checksum Unexecuted instantiation: detect-engine-alert.c:UDPV6Checksum Unexecuted instantiation: detect-engine-build.c:UDPV6Checksum Unexecuted instantiation: detect-engine.c:UDPV6Checksum Unexecuted instantiation: detect-engine-content-inspection.c:UDPV6Checksum Unexecuted instantiation: detect-engine-frame.c:UDPV6Checksum Unexecuted instantiation: detect-engine-iponly.c:UDPV6Checksum Unexecuted instantiation: detect-engine-loader.c:UDPV6Checksum Unexecuted instantiation: detect-engine-mpm.c:UDPV6Checksum Unexecuted instantiation: detect-engine-payload.c:UDPV6Checksum Unexecuted instantiation: detect-engine-port.c:UDPV6Checksum Unexecuted instantiation: detect-engine-prefilter.c:UDPV6Checksum Unexecuted instantiation: detect-engine-prefilter-common.c:UDPV6Checksum Unexecuted instantiation: detect-engine-proto.c:UDPV6Checksum Unexecuted instantiation: detect-engine-register.c:UDPV6Checksum Unexecuted instantiation: detect-engine-siggroup.c:UDPV6Checksum Unexecuted instantiation: detect-engine-sigorder.c:UDPV6Checksum Unexecuted instantiation: detect-engine-tag.c:UDPV6Checksum Unexecuted instantiation: detect-engine-threshold.c:UDPV6Checksum Unexecuted instantiation: detect-engine-uint.c:UDPV6Checksum Unexecuted instantiation: detect-fast-pattern.c:UDPV6Checksum Unexecuted instantiation: detect-file-data.c:UDPV6Checksum Unexecuted instantiation: detect-filemagic.c:UDPV6Checksum Unexecuted instantiation: detect-filemd5.c:UDPV6Checksum Unexecuted instantiation: detect-filename.c:UDPV6Checksum Unexecuted instantiation: detect-filesha1.c:UDPV6Checksum Unexecuted instantiation: detect-filesha256.c:UDPV6Checksum Unexecuted instantiation: detect-filesize.c:UDPV6Checksum Unexecuted instantiation: detect-filestore.c:UDPV6Checksum Unexecuted instantiation: detect-flowbits.c:UDPV6Checksum Unexecuted instantiation: detect-flow.c:UDPV6Checksum Unexecuted instantiation: detect-flow-age.c:UDPV6Checksum Unexecuted instantiation: detect-flowint.c:UDPV6Checksum Unexecuted instantiation: detect-flowvar.c:UDPV6Checksum Unexecuted instantiation: detect-fragbits.c:UDPV6Checksum Unexecuted instantiation: detect-fragoffset.c:UDPV6Checksum Unexecuted instantiation: detect-frame.c:UDPV6Checksum Unexecuted instantiation: detect-ftpbounce.c:UDPV6Checksum Unexecuted instantiation: detect-ftpdata.c:UDPV6Checksum Unexecuted instantiation: detect-geoip.c:UDPV6Checksum Unexecuted instantiation: detect-gid.c:UDPV6Checksum Unexecuted instantiation: detect-hostbits.c:UDPV6Checksum Unexecuted instantiation: detect-http2.c:UDPV6Checksum Unexecuted instantiation: detect-http-client-body.c:UDPV6Checksum Unexecuted instantiation: detect-http-cookie.c:UDPV6Checksum Unexecuted instantiation: detect-http-header.c:UDPV6Checksum Unexecuted instantiation: detect-http-header-common.c:UDPV6Checksum Unexecuted instantiation: detect-http-header-names.c:UDPV6Checksum Unexecuted instantiation: detect-http-host.c:UDPV6Checksum Unexecuted instantiation: detect-http-location.c:UDPV6Checksum Unexecuted instantiation: detect-http-method.c:UDPV6Checksum Unexecuted instantiation: detect-http-protocol.c:UDPV6Checksum Unexecuted instantiation: detect-http-raw-header.c:UDPV6Checksum Unexecuted instantiation: detect-http-referer.c:UDPV6Checksum Unexecuted instantiation: detect-http-request-line.c:UDPV6Checksum Unexecuted instantiation: detect-http-response-line.c:UDPV6Checksum Unexecuted instantiation: detect-http-server-body.c:UDPV6Checksum Unexecuted instantiation: detect-http-server.c:UDPV6Checksum Unexecuted instantiation: detect-http-start.c:UDPV6Checksum Unexecuted instantiation: detect-http-stat-code.c:UDPV6Checksum Unexecuted instantiation: detect-http-stat-msg.c:UDPV6Checksum Unexecuted instantiation: detect-http-ua.c:UDPV6Checksum Unexecuted instantiation: detect-http-uri.c:UDPV6Checksum Unexecuted instantiation: detect-icmp-id.c:UDPV6Checksum Unexecuted instantiation: detect-icmp-seq.c:UDPV6Checksum Unexecuted instantiation: detect-icmpv4hdr.c:UDPV6Checksum Unexecuted instantiation: detect-icmpv6hdr.c:UDPV6Checksum Unexecuted instantiation: detect-icmpv6-mtu.c:UDPV6Checksum Unexecuted instantiation: detect-icode.c:UDPV6Checksum Unexecuted instantiation: detect-id.c:UDPV6Checksum Unexecuted instantiation: detect-ike-exch-type.c:UDPV6Checksum Unexecuted instantiation: detect-ike-spi.c:UDPV6Checksum Unexecuted instantiation: detect-ike-vendor.c:UDPV6Checksum Unexecuted instantiation: detect-ike-chosen-sa.c:UDPV6Checksum Unexecuted instantiation: detect-ike-key-exchange-payload-length.c:UDPV6Checksum Unexecuted instantiation: detect-ike-nonce-payload-length.c:UDPV6Checksum Unexecuted instantiation: detect-ike-nonce-payload.c:UDPV6Checksum Unexecuted instantiation: detect-ike-key-exchange-payload.c:UDPV6Checksum Unexecuted instantiation: detect-ipaddr.c:UDPV6Checksum Unexecuted instantiation: detect-ipopts.c:UDPV6Checksum Unexecuted instantiation: detect-ipproto.c:UDPV6Checksum Unexecuted instantiation: detect-iprep.c:UDPV6Checksum Unexecuted instantiation: detect-ipv4hdr.c:UDPV6Checksum Unexecuted instantiation: detect-ipv6hdr.c:UDPV6Checksum Unexecuted instantiation: detect-isdataat.c:UDPV6Checksum Unexecuted instantiation: detect-itype.c:UDPV6Checksum Unexecuted instantiation: detect-ja4-hash.c:UDPV6Checksum Unexecuted instantiation: detect-krb5-cname.c:UDPV6Checksum Unexecuted instantiation: detect-krb5-errcode.c:UDPV6Checksum Unexecuted instantiation: detect-krb5-msgtype.c:UDPV6Checksum Unexecuted instantiation: detect-krb5-sname.c:UDPV6Checksum Unexecuted instantiation: detect-krb5-ticket-encryption.c:UDPV6Checksum Unexecuted instantiation: detect-l3proto.c:UDPV6Checksum Unexecuted instantiation: detect-lua.c:UDPV6Checksum Unexecuted instantiation: detect-mark.c:UDPV6Checksum Unexecuted instantiation: detect-metadata.c:UDPV6Checksum Unexecuted instantiation: detect-modbus.c:UDPV6Checksum Unexecuted instantiation: detect-quic-sni.c:UDPV6Checksum Unexecuted instantiation: detect-quic-ua.c:UDPV6Checksum Unexecuted instantiation: detect-quic-version.c:UDPV6Checksum Unexecuted instantiation: detect-quic-cyu-hash.c:UDPV6Checksum Unexecuted instantiation: detect-quic-cyu-string.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-connack-sessionpresent.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-connect-clientid.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-connect-flags.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-connect-password.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-connect-username.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-connect-willmessage.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-connect-willtopic.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-flags.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-protocol-version.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-publish-message.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-publish-topic.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-qos.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-reason-code.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-subscribe-topic.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-type.c:UDPV6Checksum Unexecuted instantiation: detect-mqtt-unsubscribe-topic.c:UDPV6Checksum Unexecuted instantiation: detect-msg.c:UDPV6Checksum Unexecuted instantiation: detect-nfs-procedure.c:UDPV6Checksum Unexecuted instantiation: detect-nfs-version.c:UDPV6Checksum Unexecuted instantiation: detect-noalert.c:UDPV6Checksum Unexecuted instantiation: detect-nocase.c:UDPV6Checksum Unexecuted instantiation: detect-offset.c:UDPV6Checksum Unexecuted instantiation: detect-parse.c:UDPV6Checksum Unexecuted instantiation: detect-pcre.c:UDPV6Checksum Unexecuted instantiation: detect-pkt-data.c:UDPV6Checksum Unexecuted instantiation: detect-pktvar.c:UDPV6Checksum Unexecuted instantiation: detect-prefilter.c:UDPV6Checksum Unexecuted instantiation: detect-priority.c:UDPV6Checksum Unexecuted instantiation: detect-rawbytes.c:UDPV6Checksum Unexecuted instantiation: detect-reference.c:UDPV6Checksum Unexecuted instantiation: detect-replace.c:UDPV6Checksum Unexecuted instantiation: detect-requires.c:UDPV6Checksum Unexecuted instantiation: detect-rev.c:UDPV6Checksum Unexecuted instantiation: detect-rfb-name.c:UDPV6Checksum Unexecuted instantiation: detect-rfb-secresult.c:UDPV6Checksum Unexecuted instantiation: detect-rfb-sectype.c:UDPV6Checksum Unexecuted instantiation: detect-rpc.c:UDPV6Checksum Unexecuted instantiation: detect-sameip.c:UDPV6Checksum Unexecuted instantiation: detect-sid.c:UDPV6Checksum Unexecuted instantiation: detect-sip-method.c:UDPV6Checksum Unexecuted instantiation: detect-sip-protocol.c:UDPV6Checksum Unexecuted instantiation: detect-sip-request-line.c:UDPV6Checksum Unexecuted instantiation: detect-sip-response-line.c:UDPV6Checksum Unexecuted instantiation: detect-sip-stat-code.c:UDPV6Checksum Unexecuted instantiation: detect-sip-stat-msg.c:UDPV6Checksum Unexecuted instantiation: detect-sip-uri.c:UDPV6Checksum Unexecuted instantiation: detect-smb-ntlmssp.c:UDPV6Checksum Unexecuted instantiation: detect-smb-share.c:UDPV6Checksum Unexecuted instantiation: detect-snmp-community.c:UDPV6Checksum Unexecuted instantiation: detect-snmp-pdu_type.c:UDPV6Checksum Unexecuted instantiation: detect-snmp-usm.c:UDPV6Checksum Unexecuted instantiation: detect-snmp-version.c:UDPV6Checksum Unexecuted instantiation: detect-dhcp-leasetime.c:UDPV6Checksum Unexecuted instantiation: detect-dhcp-rebinding-time.c:UDPV6Checksum Unexecuted instantiation: detect-dhcp-renewal-time.c:UDPV6Checksum Unexecuted instantiation: detect-ssh-hassh.c:UDPV6Checksum Unexecuted instantiation: detect-ssh-hassh-server.c:UDPV6Checksum Unexecuted instantiation: detect-ssh-hassh-server-string.c:UDPV6Checksum Unexecuted instantiation: detect-ssh-hassh-string.c:UDPV6Checksum Unexecuted instantiation: detect-ssh-proto.c:UDPV6Checksum Unexecuted instantiation: detect-ssh-proto-version.c:UDPV6Checksum Unexecuted instantiation: detect-ssh-software.c:UDPV6Checksum Unexecuted instantiation: detect-ssh-software-version.c:UDPV6Checksum Unexecuted instantiation: detect-ssl-state.c:UDPV6Checksum Unexecuted instantiation: detect-ssl-version.c:UDPV6Checksum Unexecuted instantiation: detect-stream_size.c:UDPV6Checksum Unexecuted instantiation: detect-tag.c:UDPV6Checksum Unexecuted instantiation: detect-target.c:UDPV6Checksum Unexecuted instantiation: detect-tcp-ack.c:UDPV6Checksum Unexecuted instantiation: detect-tcp-flags.c:UDPV6Checksum Unexecuted instantiation: detect-tcphdr.c:UDPV6Checksum Unexecuted instantiation: detect-tcpmss.c:UDPV6Checksum Unexecuted instantiation: detect-tcp-seq.c:UDPV6Checksum Unexecuted instantiation: detect-tcp-window.c:UDPV6Checksum Unexecuted instantiation: detect-template2.c:UDPV6Checksum Unexecuted instantiation: detect-template.c:UDPV6Checksum Unexecuted instantiation: detect-template-rust-buffer.c:UDPV6Checksum Unexecuted instantiation: detect-threshold.c:UDPV6Checksum Unexecuted instantiation: detect-tls.c:UDPV6Checksum Unexecuted instantiation: detect-tls-cert-fingerprint.c:UDPV6Checksum Unexecuted instantiation: detect-tls-cert-issuer.c:UDPV6Checksum Unexecuted instantiation: detect-tls-certs.c:UDPV6Checksum Unexecuted instantiation: detect-tls-cert-serial.c:UDPV6Checksum Unexecuted instantiation: detect-tls-cert-subject.c:UDPV6Checksum Unexecuted instantiation: detect-tls-cert-validity.c:UDPV6Checksum Unexecuted instantiation: detect-tls-ja3-hash.c:UDPV6Checksum Unexecuted instantiation: detect-tls-ja3s-hash.c:UDPV6Checksum Unexecuted instantiation: detect-tls-ja3s-string.c:UDPV6Checksum Unexecuted instantiation: detect-tls-ja3-string.c:UDPV6Checksum Unexecuted instantiation: detect-tls-sni.c:UDPV6Checksum Unexecuted instantiation: detect-tls-version.c:UDPV6Checksum Unexecuted instantiation: detect-tls-random.c:UDPV6Checksum Unexecuted instantiation: detect-tos.c:UDPV6Checksum Unexecuted instantiation: detect-transform-casechange.c:UDPV6Checksum Unexecuted instantiation: detect-transform-compress-whitespace.c:UDPV6Checksum Unexecuted instantiation: detect-transform-dotprefix.c:UDPV6Checksum Unexecuted instantiation: detect-transform-header-lowercase.c:UDPV6Checksum Unexecuted instantiation: detect-transform-md5.c:UDPV6Checksum Unexecuted instantiation: detect-transform-pcrexform.c:UDPV6Checksum Unexecuted instantiation: detect-transform-sha1.c:UDPV6Checksum Unexecuted instantiation: detect-transform-sha256.c:UDPV6Checksum Unexecuted instantiation: detect-transform-strip-pseudo-headers.c:UDPV6Checksum Unexecuted instantiation: detect-transform-strip-whitespace.c:UDPV6Checksum Unexecuted instantiation: detect-transform-urldecode.c:UDPV6Checksum Unexecuted instantiation: detect-transform-xor.c:UDPV6Checksum Unexecuted instantiation: detect-ttl.c:UDPV6Checksum Unexecuted instantiation: detect-udphdr.c:UDPV6Checksum Unexecuted instantiation: detect-uricontent.c:UDPV6Checksum Unexecuted instantiation: detect-urilen.c:UDPV6Checksum Unexecuted instantiation: detect-within.c:UDPV6Checksum Unexecuted instantiation: detect-xbits.c:UDPV6Checksum Unexecuted instantiation: flow-bit.c:UDPV6Checksum Unexecuted instantiation: flow-bypass.c:UDPV6Checksum Unexecuted instantiation: flow-var.c:UDPV6Checksum Unexecuted instantiation: flow-worker.c:UDPV6Checksum Unexecuted instantiation: host-bit.c:UDPV6Checksum Unexecuted instantiation: host.c:UDPV6Checksum Unexecuted instantiation: host-queue.c:UDPV6Checksum Unexecuted instantiation: host-storage.c:UDPV6Checksum Unexecuted instantiation: ippair-bit.c:UDPV6Checksum Unexecuted instantiation: ippair.c:UDPV6Checksum Unexecuted instantiation: ippair-queue.c:UDPV6Checksum Unexecuted instantiation: ippair-storage.c:UDPV6Checksum Unexecuted instantiation: output.c:UDPV6Checksum Unexecuted instantiation: output-eve-stream.c:UDPV6Checksum Unexecuted instantiation: output-filestore.c:UDPV6Checksum Unexecuted instantiation: output-json-alert.c:UDPV6Checksum Unexecuted instantiation: output-json-anomaly.c:UDPV6Checksum Unexecuted instantiation: output-json-bittorrent-dht.c:UDPV6Checksum Unexecuted instantiation: output-json.c:UDPV6Checksum Unexecuted instantiation: output-json-common.c:UDPV6Checksum Unexecuted instantiation: output-json-dcerpc.c:UDPV6Checksum Unexecuted instantiation: output-json-dhcp.c:UDPV6Checksum Unexecuted instantiation: output-json-dnp3.c:UDPV6Checksum Unexecuted instantiation: output-json-dnp3-objects.c:UDPV6Checksum Unexecuted instantiation: output-json-dns.c:UDPV6Checksum Unexecuted instantiation: output-json-drop.c:UDPV6Checksum Unexecuted instantiation: output-json-email-common.c:UDPV6Checksum Unexecuted instantiation: output-json-file.c:UDPV6Checksum Unexecuted instantiation: output-json-flow.c:UDPV6Checksum Unexecuted instantiation: output-json-frame.c:UDPV6Checksum Unexecuted instantiation: output-json-ftp.c:UDPV6Checksum Unexecuted instantiation: output-json-http2.c:UDPV6Checksum Unexecuted instantiation: output-json-http.c:UDPV6Checksum Unexecuted instantiation: output-json-ike.c:UDPV6Checksum Unexecuted instantiation: output-json-krb5.c:UDPV6Checksum Unexecuted instantiation: output-json-metadata.c:UDPV6Checksum Unexecuted instantiation: output-json-modbus.c:UDPV6Checksum Unexecuted instantiation: output-json-quic.c:UDPV6Checksum Unexecuted instantiation: output-json-mqtt.c:UDPV6Checksum Unexecuted instantiation: output-json-netflow.c:UDPV6Checksum Unexecuted instantiation: output-json-nfs.c:UDPV6Checksum Unexecuted instantiation: output-json-pgsql.c:UDPV6Checksum Unexecuted instantiation: output-json-rdp.c:UDPV6Checksum Unexecuted instantiation: output-json-rfb.c:UDPV6Checksum Unexecuted instantiation: output-json-sip.c:UDPV6Checksum Unexecuted instantiation: output-json-smb.c:UDPV6Checksum Unexecuted instantiation: output-json-smtp.c:UDPV6Checksum Unexecuted instantiation: output-json-snmp.c:UDPV6Checksum Unexecuted instantiation: output-json-ssh.c:UDPV6Checksum Unexecuted instantiation: output-json-stats.c:UDPV6Checksum Unexecuted instantiation: output-json-template.c:UDPV6Checksum Unexecuted instantiation: output-json-tftp.c:UDPV6Checksum Unexecuted instantiation: output-json-tls.c:UDPV6Checksum Unexecuted instantiation: output-eve-syslog.c:UDPV6Checksum Unexecuted instantiation: output-packet.c:UDPV6Checksum Unexecuted instantiation: output-stats.c:UDPV6Checksum Unexecuted instantiation: output-streaming.c:UDPV6Checksum Unexecuted instantiation: output-tx.c:UDPV6Checksum Unexecuted instantiation: packet-queue.c:UDPV6Checksum Unexecuted instantiation: respond-reject.c:UDPV6Checksum Unexecuted instantiation: respond-reject-libnet11.c:UDPV6Checksum Unexecuted instantiation: runmode-af-packet.c:UDPV6Checksum Unexecuted instantiation: runmode-af-xdp.c:UDPV6Checksum Unexecuted instantiation: runmode-dpdk.c:UDPV6Checksum Unexecuted instantiation: runmode-erf-dag.c:UDPV6Checksum Unexecuted instantiation: runmode-erf-file.c:UDPV6Checksum Unexecuted instantiation: runmode-ipfw.c:UDPV6Checksum Unexecuted instantiation: runmode-napatech.c:UDPV6Checksum Unexecuted instantiation: runmode-netmap.c:UDPV6Checksum Unexecuted instantiation: runmode-nflog.c:UDPV6Checksum Unexecuted instantiation: runmode-nfq.c:UDPV6Checksum Unexecuted instantiation: runmode-pcap.c:UDPV6Checksum Unexecuted instantiation: runmode-pcap-file.c:UDPV6Checksum Unexecuted instantiation: runmode-pfring.c:UDPV6Checksum Unexecuted instantiation: rust-context.c:UDPV6Checksum Unexecuted instantiation: source-af-packet.c:UDPV6Checksum Unexecuted instantiation: source-af-xdp.c:UDPV6Checksum Unexecuted instantiation: source-dpdk.c:UDPV6Checksum Unexecuted instantiation: source-erf-dag.c:UDPV6Checksum Unexecuted instantiation: source-erf-file.c:UDPV6Checksum Unexecuted instantiation: source-ipfw.c:UDPV6Checksum Unexecuted instantiation: source-napatech.c:UDPV6Checksum Unexecuted instantiation: source-netmap.c:UDPV6Checksum Unexecuted instantiation: source-nflog.c:UDPV6Checksum Unexecuted instantiation: source-nfq.c:UDPV6Checksum Unexecuted instantiation: source-pcap.c:UDPV6Checksum Unexecuted instantiation: source-pcap-file.c:UDPV6Checksum Unexecuted instantiation: source-pcap-file-directory-helper.c:UDPV6Checksum Unexecuted instantiation: source-pcap-file-helper.c:UDPV6Checksum Unexecuted instantiation: source-pfring.c:UDPV6Checksum Unexecuted instantiation: source-windivert.c:UDPV6Checksum Unexecuted instantiation: stream-tcp-inline.c:UDPV6Checksum Unexecuted instantiation: tmqh-simple.c:UDPV6Checksum Unexecuted instantiation: util-action.c:UDPV6Checksum Unexecuted instantiation: util-classification-config.c:UDPV6Checksum Unexecuted instantiation: util-detect.c:UDPV6Checksum Unexecuted instantiation: util-file-decompression.c:UDPV6Checksum Unexecuted instantiation: util-file-swf-decompression.c:UDPV6Checksum Unexecuted instantiation: util-logopenfile.c:UDPV6Checksum Unexecuted instantiation: util-mpm-ac-bs.c:UDPV6Checksum Unexecuted instantiation: util-mpm-ac.c:UDPV6Checksum Unexecuted instantiation: util-mpm-ac-ks.c:UDPV6Checksum Unexecuted instantiation: util-reference-config.c:UDPV6Checksum Unexecuted instantiation: util-rule-vars.c:UDPV6Checksum Unexecuted instantiation: util-runmodes.c:UDPV6Checksum Unexecuted instantiation: util-port-interval-tree.c:UDPV6Checksum Unexecuted instantiation: alert-debuglog.c:UDPV6Checksum Unexecuted instantiation: alert-fastlog.c:UDPV6Checksum Unexecuted instantiation: alert-syslog.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp-body.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp-xff.c:UDPV6Checksum Unexecuted instantiation: app-layer-register.c:UDPV6Checksum Unexecuted instantiation: decode-chdlc.c:UDPV6Checksum Unexecuted instantiation: decode-esp.c:UDPV6Checksum Unexecuted instantiation: decode-gre.c:UDPV6Checksum Unexecuted instantiation: decode-null.c:UDPV6Checksum Unexecuted instantiation: decode-raw.c:UDPV6Checksum Unexecuted instantiation: decode-sll.c:UDPV6Checksum Unexecuted instantiation: detect-app-layer-event.c:UDPV6Checksum Unexecuted instantiation: detect-app-layer-protocol.c:UDPV6Checksum Unexecuted instantiation: detect-asn1.c:UDPV6Checksum Unexecuted instantiation: detect-base64-data.c:UDPV6Checksum Unexecuted instantiation: detect-base64-decode.c:UDPV6Checksum Unexecuted instantiation: detect-bsize.c:UDPV6Checksum Unexecuted instantiation: detect-bypass.c:UDPV6Checksum Unexecuted instantiation: detect-byte.c:UDPV6Checksum Unexecuted instantiation: detect-byte-extract.c:UDPV6Checksum Unexecuted instantiation: detect-bytejump.c:UDPV6Checksum Unexecuted instantiation: detect-bytemath.c:UDPV6Checksum Unexecuted instantiation: detect-bytetest.c:UDPV6Checksum Unexecuted instantiation: detect.c:UDPV6Checksum Unexecuted instantiation: detect-cipservice.c:UDPV6Checksum Unexecuted instantiation: detect-classtype.c:UDPV6Checksum Unexecuted instantiation: detect-config.c:UDPV6Checksum detect-csum.c:UDPV6Checksum Line | Count | Source | 140 | 46 | { | 141 | 46 | uint16_t pad = 0; | 142 | 46 | uint32_t csum = init; | 143 | | | 144 | 46 | csum += shdr[0] + shdr[1] + shdr[2] + shdr[3] + shdr[4] + shdr[5] + shdr[6] + | 145 | 46 | shdr[7] + shdr[8] + shdr[9] + shdr[10] + shdr[11] + shdr[12] + | 146 | 46 | shdr[13] + shdr[14] + shdr[15] + htons(17) + htons(tlen); | 147 | | | 148 | 46 | csum += pkt[0] + pkt[1] + pkt[2]; | 149 | | | 150 | 46 | tlen -= 8; | 151 | 46 | pkt += 4; | 152 | | | 153 | 64 | while (tlen >= 32) { | 154 | 18 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3] + pkt[4] + pkt[5] + pkt[6] + | 155 | 18 | pkt[7] + pkt[8] + pkt[9] + pkt[10] + pkt[11] + pkt[12] + pkt[13] + | 156 | 18 | pkt[14] + pkt[15]; | 157 | 18 | tlen -= 32; | 158 | 18 | pkt += 16; | 159 | 18 | } | 160 | | | 161 | 173 | while(tlen >= 8) { | 162 | 127 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3]; | 163 | 127 | tlen -= 8; | 164 | 127 | pkt += 4; | 165 | 127 | } | 166 | | | 167 | 67 | while(tlen >= 4) { | 168 | 21 | csum += pkt[0] + pkt[1]; | 169 | 21 | tlen -= 4; | 170 | 21 | pkt += 2; | 171 | 21 | } | 172 | | | 173 | 65 | while (tlen > 1) { | 174 | 19 | csum += pkt[0]; | 175 | 19 | pkt += 1; | 176 | 19 | tlen -= 2; | 177 | 19 | } | 178 | | | 179 | 46 | if (tlen == 1) { | 180 | 17 | *(uint8_t *)(&pad) = (*(uint8_t *)pkt); | 181 | 17 | csum += pad; | 182 | 17 | } | 183 | | | 184 | 46 | csum = (csum >> 16) + (csum & 0x0000FFFF); | 185 | 46 | csum += (csum >> 16); | 186 | | | 187 | 46 | uint16_t csum_u16 = (uint16_t)~csum; | 188 | 46 | if (init == 0 && csum_u16 == 0) | 189 | 0 | return 0xFFFF; | 190 | 46 | else | 191 | 46 | return csum_u16; | 192 | 46 | } |
Unexecuted instantiation: detect-datarep.c:UDPV6Checksum Unexecuted instantiation: detect-dataset.c:UDPV6Checksum Unexecuted instantiation: detect-dce-iface.c:UDPV6Checksum Unexecuted instantiation: detect-dce-opnum.c:UDPV6Checksum Unexecuted instantiation: detect-dce-stub-data.c:UDPV6Checksum Unexecuted instantiation: detect-depth.c:UDPV6Checksum Unexecuted instantiation: detect-detection-filter.c:UDPV6Checksum Unexecuted instantiation: detect-distance.c:UDPV6Checksum Unexecuted instantiation: detect-dnp3.c:UDPV6Checksum Unexecuted instantiation: detect-dns-opcode.c:UDPV6Checksum Unexecuted instantiation: detect-dns-query.c:UDPV6Checksum Unexecuted instantiation: detect-engine-analyzer.c:UDPV6Checksum Unexecuted instantiation: detect-engine-enip.c:UDPV6Checksum Unexecuted instantiation: detect-engine-event.c:UDPV6Checksum Unexecuted instantiation: detect-engine-file.c:UDPV6Checksum Unexecuted instantiation: detect-file-hash-common.c:UDPV6Checksum Unexecuted instantiation: detect-http-accept.c:UDPV6Checksum Unexecuted instantiation: detect-http-accept-enc.c:UDPV6Checksum Unexecuted instantiation: detect-http-accept-lang.c:UDPV6Checksum Unexecuted instantiation: detect-http-connection.c:UDPV6Checksum Unexecuted instantiation: detect-http-content-len.c:UDPV6Checksum Unexecuted instantiation: detect-http-content-type.c:UDPV6Checksum Unexecuted instantiation: log-httplog.c:UDPV6Checksum Unexecuted instantiation: log-pcap.c:UDPV6Checksum Unexecuted instantiation: log-stats.c:UDPV6Checksum Unexecuted instantiation: log-tcp-data.c:UDPV6Checksum Unexecuted instantiation: log-tlslog.c:UDPV6Checksum Unexecuted instantiation: log-tlsstore.c:UDPV6Checksum Unexecuted instantiation: stream.c:UDPV6Checksum Unexecuted instantiation: fuzz_sigpcap_aware.c:UDPV6Checksum Unexecuted instantiation: util-unittest-helper.c:UDPV6Checksum Unexecuted instantiation: fuzz_decodepcapfile.c:UDPV6Checksum Unexecuted instantiation: fuzz_mimedecparseline.c:UDPV6Checksum Unexecuted instantiation: fuzz_siginit.c:UDPV6Checksum Unexecuted instantiation: fuzz_sigpcap.c:UDPV6Checksum Unexecuted instantiation: fuzz_applayerprotodetectgetproto.c:UDPV6Checksum Unexecuted instantiation: fuzz_predefpcap_aware.c:UDPV6Checksum |
193 | | |
194 | | #endif /* __DECODE_UDP_H__ */ |