| 364 | } |
| 365 | |
| 366 | static __inline int |
| 367 | in_pcbwild_needed(struct inpcb *inp) |
| 368 | { |
| 369 | #ifdef RSS |
| 370 | /* |
| 371 | * If it's a listen socket and INP_RSS_BUCKET_SET is set, |
| 372 | * it's a wildcard socket _but_ it's in a specific pcbgroup. |
| 373 | * Thus we don't treat it as a pcbwild inp. |
| 374 | */ |
| 375 | if (inp->inp_flags2 & INP_RSS_BUCKET_SET) |
| 376 | return (0); |
| 377 | #endif |
| 378 | |
| 379 | #ifdef INET6 |
| 380 | if (inp->inp_vflag & INP_IPV6) |
| 381 | return (IN6_IS_ADDR_UNSPECIFIED(&inp->in6p_faddr)); |
| 382 | else |
| 383 | #endif |
| 384 | return (inp->inp_faddr.s_addr == htonl(INADDR_ANY)); |
| 385 | } |
| 386 | |
| 387 | static void |
| 388 | in_pcbwild_update_internal(struct inpcb *inp) |
no outgoing calls
no test coverage detected