Lines Matching refs:cmptr
42 struct cmsghdr *cmptr; in recvfrom_flags() local
93 for (cmptr = CMSG_FIRSTHDR(&msg); cmptr != NULL; in recvfrom_flags()
94 cmptr = CMSG_NXTHDR(&msg, cmptr)) { in recvfrom_flags()
105 if (cmptr->cmsg_level == IPPROTO_IP && in recvfrom_flags()
106 cmptr->cmsg_type == IP_PKTINFO) { in recvfrom_flags()
110 tmp = (struct in_pktinfo *) CMSG_DATA(cmptr); in recvfrom_flags()
120 if (cmptr->cmsg_level == IPPROTO_IP && in recvfrom_flags()
121 cmptr->cmsg_type == IP_RECVDSTADDR) { in recvfrom_flags()
125 sin->sin_addr = *(struct in_addr*)CMSG_DATA(cmptr); in recvfrom_flags()
132 if (cmptr->cmsg_level == IPPROTO_IP && in recvfrom_flags()
133 cmptr->cmsg_type == IP_RECVIF) { in recvfrom_flags()
134 struct sockaddr_dl *sdl = (struct sockaddr_dl *) CMSG_DATA(cmptr); in recvfrom_flags()
152 if (cmptr->cmsg_level == IPPROTO_IP && in recvfrom_flags()
153 cmptr->cmsg_type == IP_RECVTTL) { in recvfrom_flags()
154 *ttl = *(u_char*)CMSG_DATA(cmptr); in recvfrom_flags()
157 else if (cmptr->cmsg_level == IPPROTO_IP && in recvfrom_flags()
158 … cmptr->cmsg_type == IP_TTL) { // some implementations seem to send IP_TTL instead of IP_RECVTTL in recvfrom_flags()
159 *ttl = *(int*)CMSG_DATA(cmptr); in recvfrom_flags()
165 if (cmptr->cmsg_level == IPPROTO_IPV6 && in recvfrom_flags()
166 cmptr->cmsg_type == IPV6_2292_PKTINFO) { in recvfrom_flags()
168 struct in6_pktinfo *ip6_info = (struct in6_pktinfo*)CMSG_DATA(cmptr); in recvfrom_flags()
184 if (cmptr->cmsg_level == IPPROTO_IPV6 && in recvfrom_flags()
185 cmptr->cmsg_type == IPV6_2292_HOPLIMIT) { in recvfrom_flags()
186 *ttl = *(int*)CMSG_DATA(cmptr); in recvfrom_flags()