turn off debugging log/panics by default
[unix-history] / usr / src / sys / netinet / in_pcb.h
/*
* Copyright (c) 1982, 1986 Regents of the University of California.
* All rights reserved.
*
* Redistribution and use in source and binary forms are permitted
* provided that this notice is preserved and that due credit is given
* to the University of California at Berkeley. The name of the University
* may not be used to endorse or promote products derived from this
* software without specific prior written permission. This software
* is provided ``as is'' without express or implied warranty.
*
* @(#)in_pcb.h 7.2 (Berkeley) %G%
*/
/*
* Common structure pcb for internet protocol implementation.
* Here are stored pointers to local and foreign host table
* entries, local and foreign socket numbers, and pointers
* up (to a socket structure) and down (to a protocol-specific)
* control block.
*/
struct inpcb {
struct inpcb *inp_next,*inp_prev;
/* pointers to other pcb's */
struct inpcb *inp_head; /* pointer back to chain of inpcb's
for this protocol */
struct in_addr inp_faddr; /* foreign host table entry */
u_short inp_fport; /* foreign port */
struct in_addr inp_laddr; /* local host table entry */
u_short inp_lport; /* local port */
struct socket *inp_socket; /* back pointer to socket */
caddr_t inp_ppcb; /* pointer to per-protocol pcb */
struct route inp_route; /* placeholder for routing entry */
struct mbuf *inp_options; /* IP options */
};
#define INPLOOKUP_WILDCARD 1
#define INPLOOKUP_SETLOCAL 2
#define sotoinpcb(so) ((struct inpcb *)(so)->so_pcb)
#ifdef KERNEL
struct inpcb *in_pcblookup();
#endif