Lines Matching refs:sum
82 static uint32_t raw_checksum(uint8_t *buf, int len, uint32_t sum) in raw_checksum() argument
87 sum += (u_int16_t)ntohs(*((u_int16_t *)(buf + i))); in raw_checksum()
88 if (sum > 0xffff) in raw_checksum()
89 sum -= 0xffff; in raw_checksum()
93 sum += buf[i] << 8; in raw_checksum()
94 if (sum > 0xffff) in raw_checksum()
95 sum -= 0xffff; in raw_checksum()
98 return sum; in raw_checksum()
103 uint32_t sum = 0; in udp_checksum() local
106 sum = raw_checksum((uint8_t *)&iphdr->ip_src, 2 * sizeof(iphdr->ip_src), in udp_checksum()
108 sum = raw_checksum((uint8_t *)udphdr, UDP_HLEN, sum); in udp_checksum()
109 sum = raw_checksum((uint8_t *)udp_payload, payload_len, sum); in udp_checksum()
110 res = 0xffff & ~sum; in udp_checksum()
119 uint32_t sum = 0; in udp6_checksum() local
122 sum = raw_checksum((uint8_t *)&iphdr->ip6_src, 2 * sizeof(iphdr->ip6_src), in udp6_checksum()
124 sum = raw_checksum((uint8_t *)&udphdr->len, sizeof(udphdr->len), sum); in udp6_checksum()
125 sum = raw_checksum((uint8_t *)udphdr, UDP_HLEN, sum); in udp6_checksum()
126 sum = raw_checksum((uint8_t *)udp_payload, payload_len, sum); in udp6_checksum()
127 res = 0xffff & ~sum; in udp6_checksum()