summaryrefslogtreecommitdiffstats
path: root/sys/netinet/in_pcb.h
diff options
context:
space:
mode:
authorjesper <jesper@FreeBSD.org>2001-02-22 21:23:45 +0000
committerjesper <jesper@FreeBSD.org>2001-02-22 21:23:45 +0000
commit65fa889a568f28016bc5b0bec0e238ae1ba5f299 (patch)
tree01d0c2e0ae3ce1757ab23b1a35913eb437998527 /sys/netinet/in_pcb.h
parentc3777b879606a977b736ee62694097a83a1fa76a (diff)
downloadFreeBSD-src-65fa889a568f28016bc5b0bec0e238ae1ba5f299.zip
FreeBSD-src-65fa889a568f28016bc5b0bec0e238ae1ba5f299.tar.gz
Redo the security update done in rev 1.54 of src/sys/netinet/tcp_subr.c
and 1.84 of src/sys/netinet/udp_usrreq.c The changes broken down: - remove 0 as a wildcard for addresses and port numbers in src/sys/netinet/in_pcb.c:in_pcbnotify() - add src/sys/netinet/in_pcb.c:in_pcbnotifyall() used to notify all sessions with the specific remote address. - change - src/sys/netinet/udp_usrreq.c:udp_ctlinput() - src/sys/netinet/tcp_subr.c:tcp_ctlinput() to use in_pcbnotifyall() to notify multiple sessions, instead of using in_pcbnotify() with 0 as src address and as port numbers. - remove check for src port == 0 in - src/sys/netinet/tcp_subr.c:tcp_ctlinput() - src/sys/netinet/udp_usrreq.c:udp_ctlinput() as they are no longer needed. - move handling of redirects and host dead from in_pcbnotify() to udp_ctlinput() and tcp_ctlinput(), so they will call in_pcbnotifyall() to notify all sessions with the specific remote address. Approved by: jlemon Inspired by: NetBSD
Diffstat (limited to 'sys/netinet/in_pcb.h')
-rw-r--r--sys/netinet/in_pcb.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/netinet/in_pcb.h b/sys/netinet/in_pcb.h
index 08b1627..7e4cfbe 100644
--- a/sys/netinet/in_pcb.h
+++ b/sys/netinet/in_pcb.h
@@ -274,6 +274,7 @@ extern int ipport_hifirstauto;
extern int ipport_hilastauto;
void in_losing __P((struct inpcb *));
+void in_rtchange __P((struct inpcb *, int));
int in_pcballoc __P((struct socket *, struct inpcbinfo *, struct proc *));
int in_pcbbind __P((struct inpcb *, struct sockaddr *, struct proc *));
int in_pcbconnect __P((struct inpcb *, struct sockaddr *, struct proc *));
@@ -292,6 +293,8 @@ struct inpcb *
void in_pcbnotify __P((struct inpcbhead *, struct sockaddr *,
u_int, struct in_addr, u_int, int, void (*)(struct inpcb *, int),
u_int32_t, int));
+void in_pcbnotifyall __P((struct inpcbhead *, struct sockaddr *,
+ int, void (*)(struct inpcb *, int)));
void in_pcbrehash __P((struct inpcb *));
int in_setpeeraddr __P((struct socket *so, struct sockaddr **nam));
int in_setsockaddr __P((struct socket *so, struct sockaddr **nam));
OpenPOWER on IntegriCloud