ckinfo
struct ck_info ckinfo[2];
ckinfo[0].ck_valid = ckinfo[1].ck_valid = 0;
ckinfo[0].ck_start = dsc->td.upper.fields.css;
ckinfo[0].ck_valid = 1;
ckinfo[0].ck_off =
ckinfo[0].ck_len = 0;
ckinfo[0].ck_valid = 1;
ckinfo[0].ck_start =
ckinfo[0].ck_off =
ckinfo[0].ck_len =
ckinfo[1].ck_valid = 1;
ckinfo[1].ck_start =
ckinfo[1].ck_off =
ckinfo[1].ck_len =
if (ckinfo[0].ck_valid)
hdrlen = MAX(hdrlen, ckinfo[0].ck_off + 2U);
if (ckinfo[1].ck_valid)
hdrlen = MAX(hdrlen, ckinfo[1].ck_off + 2U);
if (hdrlen < ckinfo[0].ck_start + 6U ||
hdrlen < ckinfo[0].ck_off + 2U) {
if (hdrlen < ckinfo[1].ck_start + 14U) {
if (hdrlen < ckinfo[1].ck_start + 8U) {
if (ckinfo[1].ck_valid && hdrlen < ckinfo[1].ck_off + 2U) {
if (ckinfo[1].ck_valid && hdrlen < ckinfo[1].ck_off + 2) {
ckinfo[0].ck_start += ETHER_VLAN_ENCAP_LEN;
ckinfo[0].ck_off += ETHER_VLAN_ENCAP_LEN;
if (ckinfo[0].ck_len != 0)
ckinfo[0].ck_len += ETHER_VLAN_ENCAP_LEN;
ckinfo[1].ck_start += ETHER_VLAN_ENCAP_LEN;
ckinfo[1].ck_off += ETHER_VLAN_ENCAP_LEN;
if (ckinfo[1].ck_len != 0)
ckinfo[1].ck_len += ETHER_VLAN_ENCAP_LEN;
if (ckinfo[0].ck_valid)
e82545_transmit_checksum(iov, iovcnt, &ckinfo[0]);
if (ckinfo[1].ck_valid)
e82545_transmit_checksum(iov, iovcnt, &ckinfo[1]);
ipid = ntohs(*(uint16_t *)&hdr[ckinfo[0].ck_start + 4]);
tcpseq = ntohl(*(uint32_t *)&hdr[ckinfo[1].ck_start + 4]);
ipcs = *(uint16_t *)&hdr[ckinfo[0].ck_off];
if (ckinfo[1].ck_valid) /* Save partial pseudo-header checksum. */
tcpcs = *(uint16_t *)&hdr[ckinfo[1].ck_off];
*(uint16_t *)&hdr[ckinfo[0].ck_start + 2] =
htons(hdrlen - ckinfo[0].ck_start + now);
*(uint16_t *)&hdr[ckinfo[0].ck_start + 4] =
*(uint16_t *)&hdr[ckinfo[0].ck_start + 4] =
htons(hdrlen - ckinfo[0].ck_start - 40 +
tcpsum += htons(hdrlen - ckinfo[1].ck_start + now);
*(uint32_t *)&hdr[ckinfo[1].ck_start + 4] =
hdr[ckinfo[1].ck_start + 13] &=
*(uint32_t *)&hdr[ckinfo[1].ck_start + 4] =
hdrlen - ckinfo[1].ck_start + now;
if (ckinfo[0].ck_valid) {
*(uint16_t *)&hdr[ckinfo[0].ck_off] = ipcs;
e82545_transmit_checksum(tiov, tiovcnt, &ckinfo[0]);
if (ckinfo[1].ck_valid) {
*(uint16_t *)&hdr[ckinfo[1].ck_off] =
e82545_transmit_checksum(tiov, tiovcnt, &ckinfo[1]);
if (ckinfo(dp->d_name, ckarch, ckvers))
static int ckinfo(char *, char *, char *);