/src/suricata/src/decode-udp.h
Line | Count | Source |
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 SURICATA_DECODE_UDP_H |
25 | | #define SURICATA_DECODE_UDP_H |
26 | | |
27 | 1.31M | #define UDP_HEADER_LEN 8 |
28 | | |
29 | | /* XXX RAW* needs to be really 'raw', so no SCNtohs there */ |
30 | 655k | #define UDP_GET_RAW_LEN(udph) SCNtohs((udph)->uh_len) |
31 | 655k | #define UDP_GET_RAW_SRC_PORT(udph) SCNtohs((udph)->uh_sport) |
32 | 655k | #define UDP_GET_RAW_DST_PORT(udph) SCNtohs((udph)->uh_dport) |
33 | | #define UDP_GET_RAW_SUM(udph) SCNtohs((udph)->uh_sum) |
34 | | |
35 | | #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 | | } UDPHdr; |
48 | | |
49 | | void DecodeUDPV4RegisterTests(void); |
50 | | |
51 | | /** ------ Inline function ------ */ |
52 | | |
53 | | /** |
54 | | * \brief Calculate or valid the checksum for the UDP packet |
55 | | * |
56 | | * \param shdr Pointer to source address field from the IP packet. Used as a |
57 | | * part of the psuedoheader for computing the checksum |
58 | | * \param pkt Pointer to the start of the UDP packet |
59 | | * \param hlen Total length of the UDP packet(header + payload) |
60 | | * \param init For validation this is the UDP checksum, for calculation this |
61 | | * value should be set to 0. |
62 | | * |
63 | | * \retval csum For validation 0 will be returned for success, for calculation |
64 | | * this will be the checksum. |
65 | | */ |
66 | | static inline uint16_t UDPV4Checksum( |
67 | | const uint16_t *shdr, const uint16_t *pkt, uint16_t tlen, uint16_t init) |
68 | 1.12k | { |
69 | 1.12k | uint16_t pad = 0; |
70 | 1.12k | uint32_t csum = init; |
71 | | |
72 | 1.12k | csum += shdr[0] + shdr[1] + shdr[2] + shdr[3] + htons(17) + htons(tlen); |
73 | | |
74 | 1.12k | csum += pkt[0] + pkt[1] + pkt[2]; |
75 | | |
76 | 1.12k | tlen -= 8; |
77 | 1.12k | pkt += 4; |
78 | | |
79 | 4.46k | while (tlen >= 32) { |
80 | 3.34k | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3] + pkt[4] + pkt[5] + pkt[6] + |
81 | 3.34k | pkt[7] + pkt[8] + pkt[9] + pkt[10] + pkt[11] + pkt[12] + pkt[13] + |
82 | 3.34k | pkt[14] + pkt[15]; |
83 | 3.34k | tlen -= 32; |
84 | 3.34k | pkt += 16; |
85 | 3.34k | } |
86 | | |
87 | 2.67k | while(tlen >= 8) { |
88 | 1.55k | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3]; |
89 | 1.55k | tlen -= 8; |
90 | 1.55k | pkt += 4; |
91 | 1.55k | } |
92 | | |
93 | 1.53k | while(tlen >= 4) { |
94 | 417 | csum += pkt[0] + pkt[1]; |
95 | 417 | tlen -= 4; |
96 | 417 | pkt += 2; |
97 | 417 | } |
98 | | |
99 | 1.45k | while (tlen > 1) { |
100 | 336 | csum += pkt[0]; |
101 | 336 | pkt += 1; |
102 | 336 | tlen -= 2; |
103 | 336 | } |
104 | | |
105 | 1.12k | if (tlen == 1) { |
106 | 269 | *(uint8_t *)(&pad) = (*(uint8_t *)pkt); |
107 | 269 | csum += pad; |
108 | 269 | } |
109 | | |
110 | 1.12k | csum = (csum >> 16) + (csum & 0x0000FFFF); |
111 | 1.12k | csum += (csum >> 16); |
112 | | |
113 | 1.12k | uint16_t csum_u16 = (uint16_t)~csum; |
114 | 1.12k | if (init == 0 && csum_u16 == 0) |
115 | 0 | return 0xFFFF; |
116 | 1.12k | else |
117 | 1.12k | return csum_u16; |
118 | 1.12k | } Unexecuted instantiation: fuzz_applayerparserparse.c:UDPV4Checksum Unexecuted instantiation: app-layer-parser.c:UDPV4Checksum Unexecuted instantiation: app-layer-protos.c:UDPV4Checksum Unexecuted instantiation: app-layer-smb.c:UDPV4Checksum Unexecuted instantiation: app-layer-smtp.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: app-layer.c:UDPV4Checksum Unexecuted instantiation: conf.c:UDPV4Checksum Unexecuted instantiation: counters.c:UDPV4Checksum Unexecuted instantiation: decode.c:UDPV4Checksum Unexecuted instantiation: defrag-hash.c:UDPV4Checksum Unexecuted instantiation: defrag-stack.c:UDPV4Checksum Unexecuted instantiation: defrag-timeout.c:UDPV4Checksum Unexecuted instantiation: defrag.c:UDPV4Checksum Unexecuted instantiation: detect-engine-state.c:UDPV4Checksum Unexecuted instantiation: flow-util.c:UDPV4Checksum Unexecuted instantiation: flow.c:UDPV4Checksum Unexecuted instantiation: host.c:UDPV4Checksum Unexecuted instantiation: ippair.c:UDPV4Checksum Unexecuted instantiation: output-file.c:UDPV4Checksum Unexecuted instantiation: output-filedata.c:UDPV4Checksum Unexecuted instantiation: output-flow.c:UDPV4Checksum Unexecuted instantiation: output-json-stats.c:UDPV4Checksum Unexecuted instantiation: output-json.c:UDPV4Checksum Unexecuted instantiation: output-stats.c:UDPV4Checksum Unexecuted instantiation: output.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: source-pcap-file-helper.c:UDPV4Checksum Unexecuted instantiation: source-pcap-file.c:UDPV4Checksum Unexecuted instantiation: stream-tcp-reassemble.c:UDPV4Checksum Unexecuted instantiation: stream-tcp.c:UDPV4Checksum Unexecuted instantiation: suricata.c:UDPV4Checksum Unexecuted instantiation: tm-modules.c:UDPV4Checksum Unexecuted instantiation: tm-queuehandlers.c:UDPV4Checksum Unexecuted instantiation: tm-threads.c:UDPV4Checksum Unexecuted instantiation: tmqh-flow.c:UDPV4Checksum Unexecuted instantiation: tmqh-packetpool.c:UDPV4Checksum Unexecuted instantiation: tmqh-simple.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-exception-policy.c:UDPV4Checksum Unexecuted instantiation: util-file.c:UDPV4Checksum Unexecuted instantiation: util-flow-rate.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-logopenfile.c:UDPV4Checksum Unexecuted instantiation: util-macset.c:UDPV4Checksum Unexecuted instantiation: util-mpm.c:UDPV4Checksum Unexecuted instantiation: util-plugin.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-name.c:UDPV4Checksum Unexecuted instantiation: util-var.c:UDPV4Checksum Unexecuted instantiation: alert-debuglog.c:UDPV4Checksum Unexecuted instantiation: alert-fastlog.c:UDPV4Checksum Unexecuted instantiation: alert-syslog.c:UDPV4Checksum Unexecuted instantiation: app-layer-detect-proto.c:UDPV4Checksum Unexecuted instantiation: app-layer-dnp3.c:UDPV4Checksum Unexecuted instantiation: app-layer-events.c:UDPV4Checksum Unexecuted instantiation: app-layer-expectation.c:UDPV4Checksum Unexecuted instantiation: app-layer-frames.c:UDPV4Checksum Unexecuted instantiation: app-layer-ftp.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp-range.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp-xff.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp.c:UDPV4Checksum Unexecuted instantiation: app-layer-http2.c:UDPV4Checksum Unexecuted instantiation: app-layer-ike.c:UDPV4Checksum Unexecuted instantiation: app-layer-imap.c:UDPV4Checksum Unexecuted instantiation: app-layer-modbus.c:UDPV4Checksum Unexecuted instantiation: app-layer-nfs-tcp.c:UDPV4Checksum Unexecuted instantiation: app-layer-nfs-udp.c:UDPV4Checksum Unexecuted instantiation: datasets.c:UDPV4Checksum Unexecuted instantiation: decode-arp.c:UDPV4Checksum Unexecuted instantiation: decode-chdlc.c:UDPV4Checksum Unexecuted instantiation: decode-erspan.c:UDPV4Checksum Unexecuted instantiation: decode-etag.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-null.c:UDPV4Checksum Unexecuted instantiation: decode-ppp.c:UDPV4Checksum Unexecuted instantiation: decode-pppoe.c:UDPV4Checksum Unexecuted instantiation: decode-raw.c:UDPV4Checksum Unexecuted instantiation: decode-sctp.c:UDPV4Checksum Unexecuted instantiation: decode-sll.c:UDPV4Checksum Unexecuted instantiation: decode-sll2.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-config.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-alert.c:UDPV4Checksum Unexecuted instantiation: detect-engine-buffer.c:UDPV4Checksum Unexecuted instantiation: detect-engine-build.c:UDPV4Checksum Unexecuted instantiation: detect-engine-inspect-buffer.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-common.c:UDPV4Checksum Unexecuted instantiation: detect-engine-prefilter.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-engine.c:UDPV4Checksum Unexecuted instantiation: detect-entropy.c:UDPV4Checksum Unexecuted instantiation: detect-etherhdr.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-flow-age.c:UDPV4Checksum Unexecuted instantiation: detect-flow-pkts.c:UDPV4Checksum Unexecuted instantiation: detect-flow.c:UDPV4Checksum Unexecuted instantiation: detect-flow-elephant.c:UDPV4Checksum Unexecuted instantiation: detect-flowbits.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-ftp-command-data.c:UDPV4Checksum Unexecuted instantiation: detect-ftp-command.c:UDPV4Checksum Unexecuted instantiation: detect-ftp-dynamic-port.c:UDPV4Checksum Unexecuted instantiation: detect-ftp-completion-code.c:UDPV4Checksum Unexecuted instantiation: detect-ftp-reply.c:UDPV4Checksum Unexecuted instantiation: detect-ftpbounce.c:UDPV4Checksum Unexecuted instantiation: detect-ftpdata.c:UDPV4Checksum Unexecuted instantiation: detect-ftp-mode.c:UDPV4Checksum Unexecuted instantiation: detect-ftp-reply-received.c:UDPV4Checksum Unexecuted instantiation: detect-geoip.c:UDPV4Checksum Unexecuted instantiation: detect-gid.c:UDPV4Checksum Unexecuted instantiation: detect-hostbits.c:UDPV4Checksum Unexecuted instantiation: detect-http-client-body.c:UDPV4Checksum Unexecuted instantiation: detect-http-cookie.c:UDPV4Checksum Unexecuted instantiation: detect-http-header-names.c:UDPV4Checksum Unexecuted instantiation: detect-http-header.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-http2.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-icmpv6-mtu.c:UDPV4Checksum Unexecuted instantiation: detect-icmpv6hdr.c:UDPV4Checksum Unexecuted instantiation: detect-icode.c:UDPV4Checksum Unexecuted instantiation: detect-id.c:UDPV4Checksum Unexecuted instantiation: detect-igmphdr.c:UDPV4Checksum Unexecuted instantiation: detect-igmp-type.c:UDPV4Checksum Unexecuted instantiation: detect-sctphdr.c:UDPV4Checksum Unexecuted instantiation: detect-sctp-chunk-cnt.c:UDPV4Checksum Unexecuted instantiation: detect-sctp-chunk-type.c:UDPV4Checksum Unexecuted instantiation: detect-sctp-chunk-data.c:UDPV4Checksum Unexecuted instantiation: detect-sctp-vtag.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-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-msg.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-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-uri.c:UDPV4Checksum Unexecuted instantiation: detect-smtp.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-tcp-seq.c:UDPV4Checksum Unexecuted instantiation: detect-tcp-window.c:UDPV4Checksum Unexecuted instantiation: detect-tcp-wscale.c:UDPV4Checksum Unexecuted instantiation: detect-tcphdr.c:UDPV4Checksum Unexecuted instantiation: detect-tcpmss.c:UDPV4Checksum Unexecuted instantiation: detect-template.c:UDPV4Checksum Unexecuted instantiation: detect-threshold.c:UDPV4Checksum Unexecuted instantiation: detect-tls-alpn.c:UDPV4Checksum Unexecuted instantiation: detect-tls-cert-fingerprint.c:UDPV4Checksum Unexecuted instantiation: detect-tls-cert-issuer.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-certs.c:UDPV4Checksum Unexecuted instantiation: detect-tls-ja3-hash.c:UDPV4Checksum Unexecuted instantiation: detect-tls-ja3-string.c:UDPV4Checksum Unexecuted instantiation: detect-tls-ja3s-hash.c:UDPV4Checksum Unexecuted instantiation: detect-tls-ja3s-string.c:UDPV4Checksum Unexecuted instantiation: detect-tls-random.c:UDPV4Checksum Unexecuted instantiation: detect-tls-sni.c:UDPV4Checksum Unexecuted instantiation: detect-tls-subjectaltname.c:UDPV4Checksum Unexecuted instantiation: detect-tls-version.c:UDPV4Checksum Unexecuted instantiation: detect-tls.c:UDPV4Checksum Unexecuted instantiation: detect-tos.c:UDPV4Checksum Unexecuted instantiation: detect-transform-luaxform.c:UDPV4Checksum Unexecuted instantiation: detect-transform-pcrexform.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-vlan.c:UDPV4Checksum Unexecuted instantiation: detect-within.c:UDPV4Checksum Unexecuted instantiation: detect-xbits.c:UDPV4Checksum Unexecuted instantiation: detect.c:UDPV4Checksum Unexecuted instantiation: flow-bit.c:UDPV4Checksum Unexecuted instantiation: flow-bypass.c:UDPV4Checksum Unexecuted instantiation: flow-callbacks.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-var.c:UDPV4Checksum Unexecuted instantiation: flow-worker.c:UDPV4Checksum Unexecuted instantiation: host-bit.c:UDPV4Checksum Unexecuted instantiation: host-queue.c:UDPV4Checksum Unexecuted instantiation: host-storage.c:UDPV4Checksum Unexecuted instantiation: host-timeout.c:UDPV4Checksum Unexecuted instantiation: ippair-bit.c:UDPV4Checksum Unexecuted instantiation: ippair-queue.c:UDPV4Checksum Unexecuted instantiation: ippair-storage.c:UDPV4Checksum Unexecuted instantiation: ippair-timeout.c:UDPV4Checksum Unexecuted instantiation: log-maintenance.c:UDPV4Checksum Unexecuted instantiation: log-pcap.c:UDPV4Checksum Unexecuted instantiation: log-stats.c:UDPV4Checksum Unexecuted instantiation: log-tcp-data.c:UDPV4Checksum Unexecuted instantiation: log-tlsstore.c:UDPV4Checksum Unexecuted instantiation: output-eve-null.c:UDPV4Checksum Unexecuted instantiation: output-eve-stream.c:UDPV4Checksum Unexecuted instantiation: output-eve-syslog.c:UDPV4Checksum Unexecuted instantiation: output-eve.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-arp.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-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-http.c:UDPV4Checksum Unexecuted instantiation: output-json-ike.c:UDPV4Checksum Unexecuted instantiation: output-json-llmnr.c:UDPV4Checksum Unexecuted instantiation: output-json-mdns.c:UDPV4Checksum Unexecuted instantiation: output-json-metadata.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-smb.c:UDPV4Checksum Unexecuted instantiation: output-json-smtp.c:UDPV4Checksum Unexecuted instantiation: output-json-tls.c:UDPV4Checksum Unexecuted instantiation: output-lua.c:UDPV4Checksum Unexecuted instantiation: output-packet.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: 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-netmap.c:UDPV4Checksum Unexecuted instantiation: runmode-nflog.c:UDPV4Checksum Unexecuted instantiation: runmode-nfq.c:UDPV4Checksum Unexecuted instantiation: runmode-pcap-file.c:UDPV4Checksum Unexecuted instantiation: runmode-pcap.c:UDPV4Checksum Unexecuted instantiation: runmode-unix-socket.c:UDPV4Checksum Unexecuted instantiation: runmode-windivert.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-lib.c:UDPV4Checksum Unexecuted instantiation: source-netmap.c:UDPV4Checksum Unexecuted instantiation: source-nflog.c:UDPV4Checksum Unexecuted instantiation: source-nfq.c:UDPV4Checksum Unexecuted instantiation: source-pcap-file-directory-helper.c:UDPV4Checksum Unexecuted instantiation: source-pcap.c:UDPV4Checksum Unexecuted instantiation: source-windivert.c:UDPV4Checksum Unexecuted instantiation: stream-tcp-list.c:UDPV4Checksum Unexecuted instantiation: stream-tcp-sack.c:UDPV4Checksum Unexecuted instantiation: stream.c:UDPV4Checksum Unexecuted instantiation: tx-bit.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-lua-builtins.c:UDPV4Checksum Unexecuted instantiation: util-lua-common.c:UDPV4Checksum Unexecuted instantiation: util-lua-config.c:UDPV4Checksum Unexecuted instantiation: util-lua-dataset.c:UDPV4Checksum Unexecuted instantiation: util-lua-dnp3.c:UDPV4Checksum Unexecuted instantiation: util-lua-dns.c:UDPV4Checksum Unexecuted instantiation: util-lua-filelib.c:UDPV4Checksum Unexecuted instantiation: util-lua-flowintlib.c:UDPV4Checksum Unexecuted instantiation: util-lua-flowlib.c:UDPV4Checksum Unexecuted instantiation: util-lua-flowvarlib.c:UDPV4Checksum Unexecuted instantiation: util-lua-bytevarlib.c:UDPV4Checksum Unexecuted instantiation: util-lua-hashlib.c:UDPV4Checksum Unexecuted instantiation: util-lua-http.c:UDPV4Checksum Unexecuted instantiation: util-lua-ja3.c:UDPV4Checksum Unexecuted instantiation: util-lua-log.c:UDPV4Checksum Unexecuted instantiation: util-lua-ntp.c:UDPV4Checksum Unexecuted instantiation: util-lua-packetlib.c:UDPV4Checksum Unexecuted instantiation: util-lua-rule.c:UDPV4Checksum Unexecuted instantiation: util-lua-smtp.c:UDPV4Checksum Unexecuted instantiation: util-lua-ssh.c:UDPV4Checksum Unexecuted instantiation: util-lua-tls.c:UDPV4Checksum Unexecuted instantiation: util-lua-util.c:UDPV4Checksum Unexecuted instantiation: util-lua.c:UDPV4Checksum Unexecuted instantiation: util-mpm-ac-ks.c:UDPV4Checksum Unexecuted instantiation: util-mpm-ac.c:UDPV4Checksum Unexecuted instantiation: util-port-interval-tree.c:UDPV4Checksum Unexecuted instantiation: util-reference-config.c:UDPV4Checksum Unexecuted instantiation: util-rule-vars.c:UDPV4Checksum Unexecuted instantiation: util-runmodes.c:UDPV4Checksum Unexecuted instantiation: app-layer-dnp3-objects.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp-body.c:UDPV4Checksum Unexecuted instantiation: app-layer-htp-file.c:UDPV4Checksum Unexecuted instantiation: datasets-context-json.c:UDPV4Checksum Unexecuted instantiation: datasets-ipv4.c:UDPV4Checksum Unexecuted instantiation: datasets-ipv6.c:UDPV4Checksum Unexecuted instantiation: datasets-md5.c:UDPV4Checksum Unexecuted instantiation: datasets-sha256.c:UDPV4Checksum Unexecuted instantiation: datasets-string.c:UDPV4Checksum Unexecuted instantiation: decode-esp.c:UDPV4Checksum Unexecuted instantiation: decode-gre.c:UDPV4Checksum Unexecuted instantiation: decode-igmp.c:UDPV4Checksum Unexecuted instantiation: detect-app-layer-event.c:UDPV4Checksum Unexecuted instantiation: detect-app-layer-protocol.c:UDPV4Checksum Unexecuted instantiation: detect-app-layer-state.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-extract.c:UDPV4Checksum Unexecuted instantiation: detect-byte.c:UDPV4Checksum Unexecuted instantiation: detect-bytejump.c:UDPV4Checksum Unexecuted instantiation: detect-bytemath.c:UDPV4Checksum Unexecuted instantiation: detect-bytetest.c:UDPV4Checksum Unexecuted instantiation: detect-classtype.c:UDPV4Checksum Unexecuted instantiation: detect-config.c:UDPV4Checksum detect-csum.c:UDPV4Checksum Line | Count | Source | 68 | 1.12k | { | 69 | 1.12k | uint16_t pad = 0; | 70 | 1.12k | uint32_t csum = init; | 71 | | | 72 | 1.12k | csum += shdr[0] + shdr[1] + shdr[2] + shdr[3] + htons(17) + htons(tlen); | 73 | | | 74 | 1.12k | csum += pkt[0] + pkt[1] + pkt[2]; | 75 | | | 76 | 1.12k | tlen -= 8; | 77 | 1.12k | pkt += 4; | 78 | | | 79 | 4.46k | while (tlen >= 32) { | 80 | 3.34k | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3] + pkt[4] + pkt[5] + pkt[6] + | 81 | 3.34k | pkt[7] + pkt[8] + pkt[9] + pkt[10] + pkt[11] + pkt[12] + pkt[13] + | 82 | 3.34k | pkt[14] + pkt[15]; | 83 | 3.34k | tlen -= 32; | 84 | 3.34k | pkt += 16; | 85 | 3.34k | } | 86 | | | 87 | 2.67k | while(tlen >= 8) { | 88 | 1.55k | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3]; | 89 | 1.55k | tlen -= 8; | 90 | 1.55k | pkt += 4; | 91 | 1.55k | } | 92 | | | 93 | 1.53k | while(tlen >= 4) { | 94 | 417 | csum += pkt[0] + pkt[1]; | 95 | 417 | tlen -= 4; | 96 | 417 | pkt += 2; | 97 | 417 | } | 98 | | | 99 | 1.45k | while (tlen > 1) { | 100 | 336 | csum += pkt[0]; | 101 | 336 | pkt += 1; | 102 | 336 | tlen -= 2; | 103 | 336 | } | 104 | | | 105 | 1.12k | if (tlen == 1) { | 106 | 269 | *(uint8_t *)(&pad) = (*(uint8_t *)pkt); | 107 | 269 | csum += pad; | 108 | 269 | } | 109 | | | 110 | 1.12k | csum = (csum >> 16) + (csum & 0x0000FFFF); | 111 | 1.12k | csum += (csum >> 16); | 112 | | | 113 | 1.12k | uint16_t csum_u16 = (uint16_t)~csum; | 114 | 1.12k | if (init == 0 && csum_u16 == 0) | 115 | 0 | return 0xFFFF; | 116 | 1.12k | else | 117 | 1.12k | return csum_u16; | 118 | 1.12k | } |
Unexecuted instantiation: detect-datarep.c:UDPV4Checksum Unexecuted instantiation: detect-dataset.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-name.c:UDPV4Checksum Unexecuted instantiation: detect-dns-response.c:UDPV4Checksum Unexecuted instantiation: detect-email.c:UDPV4Checksum Unexecuted instantiation: detect-engine-address-ipv4.c:UDPV4Checksum Unexecuted instantiation: detect-engine-address-ipv6.c:UDPV4Checksum Unexecuted instantiation: detect-engine-analyzer.c:UDPV4Checksum Unexecuted instantiation: detect-engine-content-inspection.c:UDPV4Checksum Unexecuted instantiation: detect-engine-event.c:UDPV4Checksum Unexecuted instantiation: detect-engine-file.c:UDPV4Checksum Unexecuted instantiation: detect-engine-frame.c:UDPV4Checksum Unexecuted instantiation: detect-engine-helper.c:UDPV4Checksum Unexecuted instantiation: detect-file-hash-common.c:UDPV4Checksum Unexecuted instantiation: detect-http-accept-enc.c:UDPV4Checksum Unexecuted instantiation: detect-http-accept-lang.c:UDPV4Checksum Unexecuted instantiation: detect-http-accept.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: detect-http-header-common.c:UDPV4Checksum Unexecuted instantiation: detect-lua-extensions.c:UDPV4Checksum Unexecuted instantiation: output-json-dnp3-objects.c:UDPV4Checksum Unexecuted instantiation: respond-reject-libnet11.c:UDPV4Checksum Unexecuted instantiation: stream-tcp-inline.c:UDPV4Checksum Unexecuted instantiation: util-lua-base64lib.c:UDPV4Checksum Unexecuted instantiation: util-lua-dnp3-objects.c:UDPV4Checksum Unexecuted instantiation: app-layer-register.c:UDPV4Checksum Unexecuted instantiation: fuzz_predefpcap_aware.c:UDPV4Checksum Unexecuted instantiation: fuzz_decodebase64.c:UDPV4Checksum Unexecuted instantiation: fuzz_sigpcap.c:UDPV4Checksum Unexecuted instantiation: util-unittest-helper.c:UDPV4Checksum Unexecuted instantiation: fuzz_iprep.c:UDPV4Checksum Unexecuted instantiation: fuzz_mimedecparseline.c:UDPV4Checksum Unexecuted instantiation: fuzz_sigpcap_aware.c:UDPV4Checksum Unexecuted instantiation: fuzz_applayerprotodetectgetproto.c:UDPV4Checksum Unexecuted instantiation: fuzz_decodepcapfile.c:UDPV4Checksum Unexecuted instantiation: fuzz_siginit.c:UDPV4Checksum |
119 | | |
120 | | /** |
121 | | * \brief Calculate or valid the checksum for the UDP packet |
122 | | * |
123 | | * \param shdr Pointer to source address field from the IPV6 packet. Used as a |
124 | | * part of the psuedoheader for computing the checksum |
125 | | * \param pkt Pointer to the start of the UDP packet |
126 | | * \param tlen Total length of the UDP packet(header + payload) |
127 | | * \param init For validation this is the UDP checksum, for calculation this |
128 | | * value should be set to 0. |
129 | | * |
130 | | * \retval csum For validation 0 will be returned for success, for calculation |
131 | | * this will be the checksum. |
132 | | */ |
133 | | static inline uint16_t UDPV6Checksum( |
134 | | const uint16_t *shdr, const uint16_t *pkt, uint16_t tlen, uint16_t init) |
135 | 214 | { |
136 | 214 | uint16_t pad = 0; |
137 | 214 | uint32_t csum = init; |
138 | | |
139 | 214 | csum += shdr[0] + shdr[1] + shdr[2] + shdr[3] + shdr[4] + shdr[5] + shdr[6] + |
140 | 214 | shdr[7] + shdr[8] + shdr[9] + shdr[10] + shdr[11] + shdr[12] + |
141 | 214 | shdr[13] + shdr[14] + shdr[15] + htons(17) + htons(tlen); |
142 | | |
143 | 214 | csum += pkt[0] + pkt[1] + pkt[2]; |
144 | | |
145 | 214 | tlen -= 8; |
146 | 214 | pkt += 4; |
147 | | |
148 | 517 | while (tlen >= 32) { |
149 | 303 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3] + pkt[4] + pkt[5] + pkt[6] + |
150 | 303 | pkt[7] + pkt[8] + pkt[9] + pkt[10] + pkt[11] + pkt[12] + pkt[13] + |
151 | 303 | pkt[14] + pkt[15]; |
152 | 303 | tlen -= 32; |
153 | 303 | pkt += 16; |
154 | 303 | } |
155 | | |
156 | 704 | while(tlen >= 8) { |
157 | 490 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3]; |
158 | 490 | tlen -= 8; |
159 | 490 | pkt += 4; |
160 | 490 | } |
161 | | |
162 | 325 | while(tlen >= 4) { |
163 | 111 | csum += pkt[0] + pkt[1]; |
164 | 111 | tlen -= 4; |
165 | 111 | pkt += 2; |
166 | 111 | } |
167 | | |
168 | 325 | while (tlen > 1) { |
169 | 111 | csum += pkt[0]; |
170 | 111 | pkt += 1; |
171 | 111 | tlen -= 2; |
172 | 111 | } |
173 | | |
174 | 214 | if (tlen == 1) { |
175 | 119 | *(uint8_t *)(&pad) = (*(uint8_t *)pkt); |
176 | 119 | csum += pad; |
177 | 119 | } |
178 | | |
179 | 214 | csum = (csum >> 16) + (csum & 0x0000FFFF); |
180 | 214 | csum += (csum >> 16); |
181 | | |
182 | 214 | uint16_t csum_u16 = (uint16_t)~csum; |
183 | 214 | if (init == 0 && csum_u16 == 0) |
184 | 0 | return 0xFFFF; |
185 | 214 | else |
186 | 214 | return csum_u16; |
187 | 214 | } Unexecuted instantiation: fuzz_applayerparserparse.c:UDPV6Checksum Unexecuted instantiation: app-layer-parser.c:UDPV6Checksum Unexecuted instantiation: app-layer-protos.c:UDPV6Checksum Unexecuted instantiation: app-layer-smb.c:UDPV6Checksum Unexecuted instantiation: app-layer-smtp.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: app-layer.c:UDPV6Checksum Unexecuted instantiation: conf.c:UDPV6Checksum Unexecuted instantiation: counters.c:UDPV6Checksum Unexecuted instantiation: decode.c:UDPV6Checksum Unexecuted instantiation: defrag-hash.c:UDPV6Checksum Unexecuted instantiation: defrag-stack.c:UDPV6Checksum Unexecuted instantiation: defrag-timeout.c:UDPV6Checksum Unexecuted instantiation: defrag.c:UDPV6Checksum Unexecuted instantiation: detect-engine-state.c:UDPV6Checksum Unexecuted instantiation: flow-util.c:UDPV6Checksum Unexecuted instantiation: flow.c:UDPV6Checksum Unexecuted instantiation: host.c:UDPV6Checksum Unexecuted instantiation: ippair.c:UDPV6Checksum Unexecuted instantiation: output-file.c:UDPV6Checksum Unexecuted instantiation: output-filedata.c:UDPV6Checksum Unexecuted instantiation: output-flow.c:UDPV6Checksum Unexecuted instantiation: output-json-stats.c:UDPV6Checksum Unexecuted instantiation: output-json.c:UDPV6Checksum Unexecuted instantiation: output-stats.c:UDPV6Checksum Unexecuted instantiation: output.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: source-pcap-file-helper.c:UDPV6Checksum Unexecuted instantiation: source-pcap-file.c:UDPV6Checksum Unexecuted instantiation: stream-tcp-reassemble.c:UDPV6Checksum Unexecuted instantiation: stream-tcp.c:UDPV6Checksum Unexecuted instantiation: suricata.c:UDPV6Checksum Unexecuted instantiation: tm-modules.c:UDPV6Checksum Unexecuted instantiation: tm-queuehandlers.c:UDPV6Checksum Unexecuted instantiation: tm-threads.c:UDPV6Checksum Unexecuted instantiation: tmqh-flow.c:UDPV6Checksum Unexecuted instantiation: tmqh-packetpool.c:UDPV6Checksum Unexecuted instantiation: tmqh-simple.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-exception-policy.c:UDPV6Checksum Unexecuted instantiation: util-file.c:UDPV6Checksum Unexecuted instantiation: util-flow-rate.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-logopenfile.c:UDPV6Checksum Unexecuted instantiation: util-macset.c:UDPV6Checksum Unexecuted instantiation: util-mpm.c:UDPV6Checksum Unexecuted instantiation: util-plugin.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-name.c:UDPV6Checksum Unexecuted instantiation: util-var.c:UDPV6Checksum Unexecuted instantiation: alert-debuglog.c:UDPV6Checksum Unexecuted instantiation: alert-fastlog.c:UDPV6Checksum Unexecuted instantiation: alert-syslog.c:UDPV6Checksum Unexecuted instantiation: app-layer-detect-proto.c:UDPV6Checksum Unexecuted instantiation: app-layer-dnp3.c:UDPV6Checksum Unexecuted instantiation: app-layer-events.c:UDPV6Checksum Unexecuted instantiation: app-layer-expectation.c:UDPV6Checksum Unexecuted instantiation: app-layer-frames.c:UDPV6Checksum Unexecuted instantiation: app-layer-ftp.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp-range.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp-xff.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp.c:UDPV6Checksum Unexecuted instantiation: app-layer-http2.c:UDPV6Checksum Unexecuted instantiation: app-layer-ike.c:UDPV6Checksum Unexecuted instantiation: app-layer-imap.c:UDPV6Checksum Unexecuted instantiation: app-layer-modbus.c:UDPV6Checksum Unexecuted instantiation: app-layer-nfs-tcp.c:UDPV6Checksum Unexecuted instantiation: app-layer-nfs-udp.c:UDPV6Checksum Unexecuted instantiation: datasets.c:UDPV6Checksum Unexecuted instantiation: decode-arp.c:UDPV6Checksum Unexecuted instantiation: decode-chdlc.c:UDPV6Checksum Unexecuted instantiation: decode-erspan.c:UDPV6Checksum Unexecuted instantiation: decode-etag.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-null.c:UDPV6Checksum Unexecuted instantiation: decode-ppp.c:UDPV6Checksum Unexecuted instantiation: decode-pppoe.c:UDPV6Checksum Unexecuted instantiation: decode-raw.c:UDPV6Checksum Unexecuted instantiation: decode-sctp.c:UDPV6Checksum Unexecuted instantiation: decode-sll.c:UDPV6Checksum Unexecuted instantiation: decode-sll2.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-config.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-alert.c:UDPV6Checksum Unexecuted instantiation: detect-engine-buffer.c:UDPV6Checksum Unexecuted instantiation: detect-engine-build.c:UDPV6Checksum Unexecuted instantiation: detect-engine-inspect-buffer.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-common.c:UDPV6Checksum Unexecuted instantiation: detect-engine-prefilter.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-engine.c:UDPV6Checksum Unexecuted instantiation: detect-entropy.c:UDPV6Checksum Unexecuted instantiation: detect-etherhdr.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-flow-age.c:UDPV6Checksum Unexecuted instantiation: detect-flow-pkts.c:UDPV6Checksum Unexecuted instantiation: detect-flow.c:UDPV6Checksum Unexecuted instantiation: detect-flow-elephant.c:UDPV6Checksum Unexecuted instantiation: detect-flowbits.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-ftp-command-data.c:UDPV6Checksum Unexecuted instantiation: detect-ftp-command.c:UDPV6Checksum Unexecuted instantiation: detect-ftp-dynamic-port.c:UDPV6Checksum Unexecuted instantiation: detect-ftp-completion-code.c:UDPV6Checksum Unexecuted instantiation: detect-ftp-reply.c:UDPV6Checksum Unexecuted instantiation: detect-ftpbounce.c:UDPV6Checksum Unexecuted instantiation: detect-ftpdata.c:UDPV6Checksum Unexecuted instantiation: detect-ftp-mode.c:UDPV6Checksum Unexecuted instantiation: detect-ftp-reply-received.c:UDPV6Checksum Unexecuted instantiation: detect-geoip.c:UDPV6Checksum Unexecuted instantiation: detect-gid.c:UDPV6Checksum Unexecuted instantiation: detect-hostbits.c:UDPV6Checksum Unexecuted instantiation: detect-http-client-body.c:UDPV6Checksum Unexecuted instantiation: detect-http-cookie.c:UDPV6Checksum Unexecuted instantiation: detect-http-header-names.c:UDPV6Checksum Unexecuted instantiation: detect-http-header.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-http2.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-icmpv6-mtu.c:UDPV6Checksum Unexecuted instantiation: detect-icmpv6hdr.c:UDPV6Checksum Unexecuted instantiation: detect-icode.c:UDPV6Checksum Unexecuted instantiation: detect-id.c:UDPV6Checksum Unexecuted instantiation: detect-igmphdr.c:UDPV6Checksum Unexecuted instantiation: detect-igmp-type.c:UDPV6Checksum Unexecuted instantiation: detect-sctphdr.c:UDPV6Checksum Unexecuted instantiation: detect-sctp-chunk-cnt.c:UDPV6Checksum Unexecuted instantiation: detect-sctp-chunk-type.c:UDPV6Checksum Unexecuted instantiation: detect-sctp-chunk-data.c:UDPV6Checksum Unexecuted instantiation: detect-sctp-vtag.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-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-msg.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-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-uri.c:UDPV6Checksum Unexecuted instantiation: detect-smtp.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-tcp-seq.c:UDPV6Checksum Unexecuted instantiation: detect-tcp-window.c:UDPV6Checksum Unexecuted instantiation: detect-tcp-wscale.c:UDPV6Checksum Unexecuted instantiation: detect-tcphdr.c:UDPV6Checksum Unexecuted instantiation: detect-tcpmss.c:UDPV6Checksum Unexecuted instantiation: detect-template.c:UDPV6Checksum Unexecuted instantiation: detect-threshold.c:UDPV6Checksum Unexecuted instantiation: detect-tls-alpn.c:UDPV6Checksum Unexecuted instantiation: detect-tls-cert-fingerprint.c:UDPV6Checksum Unexecuted instantiation: detect-tls-cert-issuer.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-certs.c:UDPV6Checksum Unexecuted instantiation: detect-tls-ja3-hash.c:UDPV6Checksum Unexecuted instantiation: detect-tls-ja3-string.c:UDPV6Checksum Unexecuted instantiation: detect-tls-ja3s-hash.c:UDPV6Checksum Unexecuted instantiation: detect-tls-ja3s-string.c:UDPV6Checksum Unexecuted instantiation: detect-tls-random.c:UDPV6Checksum Unexecuted instantiation: detect-tls-sni.c:UDPV6Checksum Unexecuted instantiation: detect-tls-subjectaltname.c:UDPV6Checksum Unexecuted instantiation: detect-tls-version.c:UDPV6Checksum Unexecuted instantiation: detect-tls.c:UDPV6Checksum Unexecuted instantiation: detect-tos.c:UDPV6Checksum Unexecuted instantiation: detect-transform-luaxform.c:UDPV6Checksum Unexecuted instantiation: detect-transform-pcrexform.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-vlan.c:UDPV6Checksum Unexecuted instantiation: detect-within.c:UDPV6Checksum Unexecuted instantiation: detect-xbits.c:UDPV6Checksum Unexecuted instantiation: detect.c:UDPV6Checksum Unexecuted instantiation: flow-bit.c:UDPV6Checksum Unexecuted instantiation: flow-bypass.c:UDPV6Checksum Unexecuted instantiation: flow-callbacks.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-var.c:UDPV6Checksum Unexecuted instantiation: flow-worker.c:UDPV6Checksum Unexecuted instantiation: host-bit.c:UDPV6Checksum Unexecuted instantiation: host-queue.c:UDPV6Checksum Unexecuted instantiation: host-storage.c:UDPV6Checksum Unexecuted instantiation: host-timeout.c:UDPV6Checksum Unexecuted instantiation: ippair-bit.c:UDPV6Checksum Unexecuted instantiation: ippair-queue.c:UDPV6Checksum Unexecuted instantiation: ippair-storage.c:UDPV6Checksum Unexecuted instantiation: ippair-timeout.c:UDPV6Checksum Unexecuted instantiation: log-maintenance.c:UDPV6Checksum Unexecuted instantiation: log-pcap.c:UDPV6Checksum Unexecuted instantiation: log-stats.c:UDPV6Checksum Unexecuted instantiation: log-tcp-data.c:UDPV6Checksum Unexecuted instantiation: log-tlsstore.c:UDPV6Checksum Unexecuted instantiation: output-eve-null.c:UDPV6Checksum Unexecuted instantiation: output-eve-stream.c:UDPV6Checksum Unexecuted instantiation: output-eve-syslog.c:UDPV6Checksum Unexecuted instantiation: output-eve.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-arp.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-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-http.c:UDPV6Checksum Unexecuted instantiation: output-json-ike.c:UDPV6Checksum Unexecuted instantiation: output-json-llmnr.c:UDPV6Checksum Unexecuted instantiation: output-json-mdns.c:UDPV6Checksum Unexecuted instantiation: output-json-metadata.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-smb.c:UDPV6Checksum Unexecuted instantiation: output-json-smtp.c:UDPV6Checksum Unexecuted instantiation: output-json-tls.c:UDPV6Checksum Unexecuted instantiation: output-lua.c:UDPV6Checksum Unexecuted instantiation: output-packet.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: 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-netmap.c:UDPV6Checksum Unexecuted instantiation: runmode-nflog.c:UDPV6Checksum Unexecuted instantiation: runmode-nfq.c:UDPV6Checksum Unexecuted instantiation: runmode-pcap-file.c:UDPV6Checksum Unexecuted instantiation: runmode-pcap.c:UDPV6Checksum Unexecuted instantiation: runmode-unix-socket.c:UDPV6Checksum Unexecuted instantiation: runmode-windivert.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-lib.c:UDPV6Checksum Unexecuted instantiation: source-netmap.c:UDPV6Checksum Unexecuted instantiation: source-nflog.c:UDPV6Checksum Unexecuted instantiation: source-nfq.c:UDPV6Checksum Unexecuted instantiation: source-pcap-file-directory-helper.c:UDPV6Checksum Unexecuted instantiation: source-pcap.c:UDPV6Checksum Unexecuted instantiation: source-windivert.c:UDPV6Checksum Unexecuted instantiation: stream-tcp-list.c:UDPV6Checksum Unexecuted instantiation: stream-tcp-sack.c:UDPV6Checksum Unexecuted instantiation: stream.c:UDPV6Checksum Unexecuted instantiation: tx-bit.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-lua-builtins.c:UDPV6Checksum Unexecuted instantiation: util-lua-common.c:UDPV6Checksum Unexecuted instantiation: util-lua-config.c:UDPV6Checksum Unexecuted instantiation: util-lua-dataset.c:UDPV6Checksum Unexecuted instantiation: util-lua-dnp3.c:UDPV6Checksum Unexecuted instantiation: util-lua-dns.c:UDPV6Checksum Unexecuted instantiation: util-lua-filelib.c:UDPV6Checksum Unexecuted instantiation: util-lua-flowintlib.c:UDPV6Checksum Unexecuted instantiation: util-lua-flowlib.c:UDPV6Checksum Unexecuted instantiation: util-lua-flowvarlib.c:UDPV6Checksum Unexecuted instantiation: util-lua-bytevarlib.c:UDPV6Checksum Unexecuted instantiation: util-lua-hashlib.c:UDPV6Checksum Unexecuted instantiation: util-lua-http.c:UDPV6Checksum Unexecuted instantiation: util-lua-ja3.c:UDPV6Checksum Unexecuted instantiation: util-lua-log.c:UDPV6Checksum Unexecuted instantiation: util-lua-ntp.c:UDPV6Checksum Unexecuted instantiation: util-lua-packetlib.c:UDPV6Checksum Unexecuted instantiation: util-lua-rule.c:UDPV6Checksum Unexecuted instantiation: util-lua-smtp.c:UDPV6Checksum Unexecuted instantiation: util-lua-ssh.c:UDPV6Checksum Unexecuted instantiation: util-lua-tls.c:UDPV6Checksum Unexecuted instantiation: util-lua-util.c:UDPV6Checksum Unexecuted instantiation: util-lua.c:UDPV6Checksum Unexecuted instantiation: util-mpm-ac-ks.c:UDPV6Checksum Unexecuted instantiation: util-mpm-ac.c:UDPV6Checksum Unexecuted instantiation: util-port-interval-tree.c:UDPV6Checksum Unexecuted instantiation: util-reference-config.c:UDPV6Checksum Unexecuted instantiation: util-rule-vars.c:UDPV6Checksum Unexecuted instantiation: util-runmodes.c:UDPV6Checksum Unexecuted instantiation: app-layer-dnp3-objects.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp-body.c:UDPV6Checksum Unexecuted instantiation: app-layer-htp-file.c:UDPV6Checksum Unexecuted instantiation: datasets-context-json.c:UDPV6Checksum Unexecuted instantiation: datasets-ipv4.c:UDPV6Checksum Unexecuted instantiation: datasets-ipv6.c:UDPV6Checksum Unexecuted instantiation: datasets-md5.c:UDPV6Checksum Unexecuted instantiation: datasets-sha256.c:UDPV6Checksum Unexecuted instantiation: datasets-string.c:UDPV6Checksum Unexecuted instantiation: decode-esp.c:UDPV6Checksum Unexecuted instantiation: decode-gre.c:UDPV6Checksum Unexecuted instantiation: decode-igmp.c:UDPV6Checksum Unexecuted instantiation: detect-app-layer-event.c:UDPV6Checksum Unexecuted instantiation: detect-app-layer-protocol.c:UDPV6Checksum Unexecuted instantiation: detect-app-layer-state.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-extract.c:UDPV6Checksum Unexecuted instantiation: detect-byte.c:UDPV6Checksum Unexecuted instantiation: detect-bytejump.c:UDPV6Checksum Unexecuted instantiation: detect-bytemath.c:UDPV6Checksum Unexecuted instantiation: detect-bytetest.c:UDPV6Checksum Unexecuted instantiation: detect-classtype.c:UDPV6Checksum Unexecuted instantiation: detect-config.c:UDPV6Checksum detect-csum.c:UDPV6Checksum Line | Count | Source | 135 | 214 | { | 136 | 214 | uint16_t pad = 0; | 137 | 214 | uint32_t csum = init; | 138 | | | 139 | 214 | csum += shdr[0] + shdr[1] + shdr[2] + shdr[3] + shdr[4] + shdr[5] + shdr[6] + | 140 | 214 | shdr[7] + shdr[8] + shdr[9] + shdr[10] + shdr[11] + shdr[12] + | 141 | 214 | shdr[13] + shdr[14] + shdr[15] + htons(17) + htons(tlen); | 142 | | | 143 | 214 | csum += pkt[0] + pkt[1] + pkt[2]; | 144 | | | 145 | 214 | tlen -= 8; | 146 | 214 | pkt += 4; | 147 | | | 148 | 517 | while (tlen >= 32) { | 149 | 303 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3] + pkt[4] + pkt[5] + pkt[6] + | 150 | 303 | pkt[7] + pkt[8] + pkt[9] + pkt[10] + pkt[11] + pkt[12] + pkt[13] + | 151 | 303 | pkt[14] + pkt[15]; | 152 | 303 | tlen -= 32; | 153 | 303 | pkt += 16; | 154 | 303 | } | 155 | | | 156 | 704 | while(tlen >= 8) { | 157 | 490 | csum += pkt[0] + pkt[1] + pkt[2] + pkt[3]; | 158 | 490 | tlen -= 8; | 159 | 490 | pkt += 4; | 160 | 490 | } | 161 | | | 162 | 325 | while(tlen >= 4) { | 163 | 111 | csum += pkt[0] + pkt[1]; | 164 | 111 | tlen -= 4; | 165 | 111 | pkt += 2; | 166 | 111 | } | 167 | | | 168 | 325 | while (tlen > 1) { | 169 | 111 | csum += pkt[0]; | 170 | 111 | pkt += 1; | 171 | 111 | tlen -= 2; | 172 | 111 | } | 173 | | | 174 | 214 | if (tlen == 1) { | 175 | 119 | *(uint8_t *)(&pad) = (*(uint8_t *)pkt); | 176 | 119 | csum += pad; | 177 | 119 | } | 178 | | | 179 | 214 | csum = (csum >> 16) + (csum & 0x0000FFFF); | 180 | 214 | csum += (csum >> 16); | 181 | | | 182 | 214 | uint16_t csum_u16 = (uint16_t)~csum; | 183 | 214 | if (init == 0 && csum_u16 == 0) | 184 | 0 | return 0xFFFF; | 185 | 214 | else | 186 | 214 | return csum_u16; | 187 | 214 | } |
Unexecuted instantiation: detect-datarep.c:UDPV6Checksum Unexecuted instantiation: detect-dataset.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-name.c:UDPV6Checksum Unexecuted instantiation: detect-dns-response.c:UDPV6Checksum Unexecuted instantiation: detect-email.c:UDPV6Checksum Unexecuted instantiation: detect-engine-address-ipv4.c:UDPV6Checksum Unexecuted instantiation: detect-engine-address-ipv6.c:UDPV6Checksum Unexecuted instantiation: detect-engine-analyzer.c:UDPV6Checksum Unexecuted instantiation: detect-engine-content-inspection.c:UDPV6Checksum Unexecuted instantiation: detect-engine-event.c:UDPV6Checksum Unexecuted instantiation: detect-engine-file.c:UDPV6Checksum Unexecuted instantiation: detect-engine-frame.c:UDPV6Checksum Unexecuted instantiation: detect-engine-helper.c:UDPV6Checksum Unexecuted instantiation: detect-file-hash-common.c:UDPV6Checksum Unexecuted instantiation: detect-http-accept-enc.c:UDPV6Checksum Unexecuted instantiation: detect-http-accept-lang.c:UDPV6Checksum Unexecuted instantiation: detect-http-accept.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: detect-http-header-common.c:UDPV6Checksum Unexecuted instantiation: detect-lua-extensions.c:UDPV6Checksum Unexecuted instantiation: output-json-dnp3-objects.c:UDPV6Checksum Unexecuted instantiation: respond-reject-libnet11.c:UDPV6Checksum Unexecuted instantiation: stream-tcp-inline.c:UDPV6Checksum Unexecuted instantiation: util-lua-base64lib.c:UDPV6Checksum Unexecuted instantiation: util-lua-dnp3-objects.c:UDPV6Checksum Unexecuted instantiation: app-layer-register.c:UDPV6Checksum Unexecuted instantiation: fuzz_predefpcap_aware.c:UDPV6Checksum Unexecuted instantiation: fuzz_decodebase64.c:UDPV6Checksum Unexecuted instantiation: fuzz_sigpcap.c:UDPV6Checksum Unexecuted instantiation: util-unittest-helper.c:UDPV6Checksum Unexecuted instantiation: fuzz_iprep.c:UDPV6Checksum Unexecuted instantiation: fuzz_mimedecparseline.c:UDPV6Checksum Unexecuted instantiation: fuzz_sigpcap_aware.c:UDPV6Checksum Unexecuted instantiation: fuzz_applayerprotodetectgetproto.c:UDPV6Checksum Unexecuted instantiation: fuzz_decodepcapfile.c:UDPV6Checksum Unexecuted instantiation: fuzz_siginit.c:UDPV6Checksum |
188 | | |
189 | | #endif /* SURICATA_DECODE_UDP_H */ |