SCCS-vsn: sys/netinet/in_pcb.c 4.5
SCCS-vsn: sys/sys/socketvar.h 4.7
-/* in_pcb.c 4.4 81/11/20 */
+/* in_pcb.c 4.5 81/11/20 */
#include "../h/param.h"
#include "../h/systm.h"
#include "../h/param.h"
#include "../h/systm.h"
inp->inp_lport = lport;
insque(head, inp);
so->so_pcb = (caddr_t)inp;
inp->inp_lport = lport;
insque(head, inp);
so->so_pcb = (caddr_t)inp;
+ sin = (struct sockaddr_in *)&so->so_addr;
+ sin->sin_family = AF_INET;
+ sin->sin_addr = inp->inp_laddr;
+ sin->sin_port = inp->inp_lport;
return (0);
bad2:
sbrelease(&so->so_snd);
return (0);
bad2:
sbrelease(&so->so_snd);
-/* socketvar.h 4.6 81/11/20 */
+/* socketvar.h 4.7 81/11/20 */
/*
* Kernel structure per socket.
/*
* Kernel structure per socket.
struct proc *sb_sel; /* process selecting read/write */
short sb_flags; /* flags, see below */
} so_rcv, so_snd;
struct proc *sb_sel; /* process selecting read/write */
short sb_flags; /* flags, see below */
} so_rcv, so_snd;
-#define SB_LOCK 0x01 /* lock on data queue (so_rcv only) */
-#define SB_WANT 0x02 /* someone is waiting to lock */
+#define SB_LOCK 0x01 /* lock on data queue (so_rcv only) */ #define SB_WANT 0x02 /* someone is waiting to lock */
#define SB_WAIT 0x04 /* someone is waiting for data/space */
#define SB_SEL 0x08 /* buffer is selected */
#define SB_COLL 0x10 /* collision selecting */
/* need something for async wakeup */
short so_timeo; /* connection timeout */
u_short so_error; /* error indicator */
#define SB_WAIT 0x04 /* someone is waiting for data/space */
#define SB_SEL 0x08 /* buffer is selected */
#define SB_COLL 0x10 /* collision selecting */
/* need something for async wakeup */
short so_timeo; /* connection timeout */
u_short so_error; /* error indicator */
+ struct sockaddr so_addr; /* socket address */