/* Copyright 1984 by the Massachusetts Institute of Technology */

/* Widely used external declarations. The second section is declared in
 * the netcnf file, which is the master configuration file. The buffer
 * information is in the MOSTBL file (they affect storage allocation).
 * The way buffers work is the IORB and the actual data area are allocated
 * contiguously. The code tries very hard to ensure that the packet (not
 * including local headers) is put down at a fixed offset into the data
 * area; room is left on the front and back for local headers and trailers.
 * A few useful numbers are precomputed; bufsiz is the size of the complete
 * buffer, including the IORB; pktoff is the offset into the buffer of the
 * packet (i.e. beyond the area reserved for local headers); pktsiz is maximum
 * packet size (again, not including local headers), and hdrsiz and tlrsiz are
 * the maximum size of local headers/trailers.
 * The rest of the variables are not initialized and are allocated in ext.c
 */


ext	char	*netnm[];	/* Network names */
ext	char	*mach_name[];	/* Machine names */
ext	unsb	nntt;		/* Number of net types */

ext	char	name[];		/* Node name */
ext	int	mach_type;	/* Machine type */
ext	bitw	msgflg;		/* Logging levels turned on */
ext	unsw	nnets;		/* Number of interfaces */
ext	net	nets[];		/* Main network structure */
ext	net	*lstnet;	/* Pointer after last net */

ext	unsw	bufsiz;		/* Canonical buffer size (including IORB) */
ext	unsw	pktoff;		/* Offset into buffer of pkt data */
ext	unsw	pktsiz;		/* Max size for pkt in buffer */
ext	unsw	hdrsiz;		/* Max header size */
ext	unsw	tlrsiz;		/* Max trailer size */


ext	bitw	msglvl;		/* Message level of latest log call */
ext	hndlre	*syshnd;	/* Handler database system */
ext	void	(*netino)();	/* Network package input routine */
ext	void	(*netipro)();	/* Network package input restart routine */
ext	void	(*netouto)();	/* Network package output routine */
ext	void	(*netdlyo)();	/* Network package dally routine */
ext	unsw	nprots;		/* Number of protocols loaded */
ext	unsw	nbufs;		/* Number of buffers in system */
ext	unsw	nbfree;		/* Number of free buffers */
ext	unsw	bufshr;		/* Fair share of buffers */
ext	unsw	buflow;		/* Buffer low water mark */
ext	iorb	*bfrlst;	/* Buffer free list */
ext	iorb	*qtmp;		/* Temporary for queue hacking */
