Lines Matching refs:pPacket

304 int CheckUdpPacket(struct UdpDhcpPacket *pPacket, const int totLen)
306 if (pPacket == NULL) {
307 DHCP_LOGE("CheckUdpPacket() failed, pPacket == NULL!");
317 if ((pPacket->ip.protocol != IPPROTO_UDP) || (pPacket->ip.version != IPVERSION)) {
318 DHCP_LOGE("CheckUdpPacket() failed, pPacket->ip.protocol:%{public}d or version:%{public}u error!",
319 pPacket->ip.protocol, pPacket->ip.version);
323 uint32_t uIhl = (uint32_t)(sizeof(pPacket->ip) >> DHCP_UINT16_BYTES);
324 if (pPacket->ip.ihl != uIhl) {
325 DHCP_LOGE("CheckUdpPacket() failed, pPacket->ip.ihl:%{public}u error, uIhl:%{public}u!", pPacket->ip.ihl, uIhl);
329 if (pPacket->udp.dest != htons(BOOTP_CLIENT)) {
330 DHCP_LOGE("CheckUdpPacket() failed, pPacket->udp.dest:%{public}d error, htons:%{public}d!",
331 pPacket->udp.dest, htons(BOOTP_CLIENT));
335 uint16_t uLen = (uint16_t)(totLen - (int)sizeof(pPacket->ip));
336 if (ntohs(pPacket->udp.len) != uLen) {
337 DHCP_LOGE("CheckUdpPacket() failed, pPacket->udp.len:%{public}d error, uLen:%{public}d!",
338 pPacket->udp.len, uLen);
345 int CheckPacketIpSum(struct UdpDhcpPacket *pPacket, const int bytes)
347 if (pPacket == NULL) {
351 if (CheckUdpPacket(pPacket, bytes) != SOCKET_OPT_SUCCESS) {
356 uint16_t uCheck = pPacket->ip.check;
357 pPacket->ip.check = 0;
358 uint16_t uCheckSum = GetCheckSum((uint16_t *)&(pPacket->ip), sizeof(pPacket->ip));
367 int CheckPacketUdpSum(struct UdpDhcpPacket *pPacket, const int bytes)
369 if (pPacket == NULL) {
370 DHCP_LOGE("CheckPacketUdpSum() failed, pPacket == NULL!");
375 uint16_t uCheck = pPacket->udp.check;
376 pPacket->udp.check = 0;
377 u_int32_t source = pPacket->ip.saddr;
378 u_int32_t dest = pPacket->ip.daddr;
379 if (memset_s(&pPacket->ip, sizeof(pPacket->ip), 0, sizeof(pPacket->ip)) != EOK) {
383 pPacket->ip.protocol = IPPROTO_UDP;
384 pPacket->ip.saddr = source;
385 pPacket->ip.daddr = dest;
386 pPacket->ip.tot_len = pPacket->udp.len;
387 uint16_t uCheckSum = GetCheckSum((uint16_t *)pPacket, bytes);