| version 1.18, 1995/06/12 00:48:06 |
version 1.19, 1995/06/12 06:24:22 |
| Line 369 udp_ctlinput(cmd, sa, ip) |
|
| Line 369 udp_ctlinput(cmd, sa, ip) |
|
| void (*notify) __P((struct inpcb *, int)) = udp_notify; |
void (*notify) __P((struct inpcb *, int)) = udp_notify; |
| |
|
| if (PRC_IS_REDIRECT(cmd)) |
if (PRC_IS_REDIRECT(cmd)) |
| notify = in_rtchange; |
notify = in_rtchange, ip = 0; |
| else if (cmd == PRC_HOSTDEAD) |
else if (cmd == PRC_HOSTDEAD) |
| ; |
ip = 0; |
| else if ((unsigned)cmd >= PRC_NCMDS || inetctlerrmap[cmd] == 0) |
else if ((unsigned)cmd >= PRC_NCMDS || inetctlerrmap[cmd] == 0) |
| return; |
return; |
| else if (ip) { |
if (ip) { |
| uh = (struct udphdr *)((caddr_t)ip + (ip->ip_hl << 2)); |
uh = (struct udphdr *)((caddr_t)ip + (ip->ip_hl << 2)); |
| in_pcbnotify(&udbtable, sa, uh->uh_dport, ip->ip_src, |
in_pcbnotify(&udbtable, sa, uh->uh_dport, ip->ip_src, |
| uh->uh_sport, cmd, notify); |
uh->uh_sport, cmd, notify); |
| return; |
} else |
| } |
in_pcbnotifyall(&udbtable, sa, cmd, notify); |
| in_pcbnotifyall(&udbtable, sa, cmd, notify); |
|
| } |
} |
| |
|
| int |
int |