Lines Matching full:packet

156     } packet;  in receive_packet()  local
162 nread = read(s, &packet, sizeof(packet)); in receive_packet()
167 * The raw packet interface gives us all packets received by the in receive_packet()
174 ALOGD("Packet is too small (%d) to be a UDP datagram", nread); in receive_packet()
176 } else if (packet.ip.version != IPVERSION || packet.ip.ihl != (sizeof(packet.ip) >> 2)) { in receive_packet()
178 ALOGD("Not a valid IP packet"); in receive_packet()
180 } else if (nread < ntohs(packet.ip.tot_len)) { in receive_packet()
182 ALOGD("Packet was truncated (read %d, needed %d)", nread, ntohs(packet.ip.tot_len)); in receive_packet()
184 } else if (packet.ip.protocol != IPPROTO_UDP) { in receive_packet()
186 ALOGD("IP protocol (%d) is not UDP", packet.ip.protocol); in receive_packet()
188 } else if (packet.udp.dest != htons(PORT_BOOTP_CLIENT)) { in receive_packet()
190 ALOGD("UDP dest port (%d) is not DHCP client", ntohs(packet.udp.dest)); in receive_packet()
200 /* Seems like it's probably a valid DHCP packet */ in receive_packet()
202 sum = finish_sum(checksum(&packet.ip, sizeof(packet.ip), 0)); in receive_packet()
204 printf("IP header checksum failure (0x%x)\n", packet.ip.check); in receive_packet()
212 dhcp_size = ntohs(packet.udp.len) - sizeof(packet.udp); in receive_packet()
223 printf("Malformed Packet\n"); in receive_packet()
227 saddr = packet.ip.saddr; in receive_packet()
228 daddr = packet.ip.daddr; in receive_packet()
229 nread = ntohs(packet.ip.tot_len); in receive_packet()
230 memset(&packet.ip, 0, sizeof(packet.ip)); in receive_packet()
231 packet.ip.saddr = saddr; in receive_packet()
232 packet.ip.daddr = daddr; in receive_packet()
233 packet.ip.protocol = IPPROTO_UDP; in receive_packet()
234 packet.ip.tot_len = packet.udp.len; in receive_packet()
235 temp = packet.udp.check; in receive_packet()
236 packet.udp.check = 0; in receive_packet()
237 sum = finish_sum(checksum(&packet, nread, 0)); in receive_packet()
238 packet.udp.check = temp; in receive_packet()
245 memcpy(msg, &packet.dhcp, dhcp_size); in receive_packet()