summaryrefslogtreecommitdiffstats
path: root/sys/netinet/in_pcb.h
diff options
context:
space:
mode:
authoriedowse <iedowse@FreeBSD.org>2002-10-21 13:55:50 +0000
committeriedowse <iedowse@FreeBSD.org>2002-10-21 13:55:50 +0000
commita5bc5c7b7ede3570b7cb9530c8d8f2847945f0fa (patch)
treeafd766ec15eff4244ba3cea699f2b6825cd18fbc /sys/netinet/in_pcb.h
parentda47f8f7ff907d670fb37bf616bfe3505a92288d (diff)
downloadFreeBSD-src-a5bc5c7b7ede3570b7cb9530c8d8f2847945f0fa.zip
FreeBSD-src-a5bc5c7b7ede3570b7cb9530c8d8f2847945f0fa.tar.gz
Replace in_pcbladdr() with a more generic inner subroutine for
in_pcbconnect() called in_pcbconnect_setup(). This version performs all of the functions of in_pcbconnect() except for the final committing of changes to the PCB. In the case of an EADDRINUSE error it can also provide to the caller the PCB of the duplicate connection, avoiding an extra in_pcblookup_hash() lookup in tcp_connect(). This change will allow the "temporary connect" hack in udp_output() to be removed and is part of the preparation for adding the IP_SENDSRCADDR control message. Discussed on: -net Approved by: re
Diffstat (limited to 'sys/netinet/in_pcb.h')
-rw-r--r--sys/netinet/in_pcb.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/netinet/in_pcb.h b/sys/netinet/in_pcb.h
index 7f26114..7cbcd3d 100644
--- a/sys/netinet/in_pcb.h
+++ b/sys/netinet/in_pcb.h
@@ -331,11 +331,12 @@ int in_pcbbind(struct inpcb *, struct sockaddr *, struct thread *);
int in_pcbbind_setup(struct inpcb *, struct sockaddr *, in_addr_t *,
u_short *, struct thread *);
int in_pcbconnect(struct inpcb *, struct sockaddr *, struct thread *);
+int in_pcbconnect_setup(struct inpcb *, struct sockaddr *, in_addr_t *,
+ u_short *, in_addr_t *, u_short *, struct inpcb **,
+ struct thread *);
void in_pcbdetach(struct inpcb *);
void in_pcbdisconnect(struct inpcb *);
int in_pcbinshash(struct inpcb *);
-int in_pcbladdr(struct inpcb *, struct sockaddr *,
- struct sockaddr_in **);
struct inpcb *
in_pcblookup_local(struct inpcbinfo *,
struct in_addr, u_int, int);
OpenPOWER on IntegriCloud