File:  [XINU] / xinu / sys / dgcntl.c
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:39:02 2018 UTC (8 years, 3 months ago) by root
Branches: xinu, MAIN
CVS tags: xinu-19870308, HEAD
Xinu for VAX

/* dgcntl.c - dgcntl */

#include <conf.h>
#include <kernel.h>
#include <network.h>

/*------------------------------------------------------------------------
 *  dgcntl  -  control function for datagram pseudo-devices
 *------------------------------------------------------------------------
 */
dgcntl(devptr, func, arg)
struct	devsw	*devptr;
int	func;
int	arg;
{
	struct	dgblk	*dgptr;
	int	freebuf();
	PStype	ps;
	int	ret;

	disable(ps);
	dgptr = (struct dgblk *)devptr->dvioblk;
	ret = OK;
	switch (func) {

		case DG_SETMODE:	/* set mode bits */
			dgptr->dg_mode = arg;
			break;

		case DG_CLEAR:		/* clear queued packets */
			preset(dgptr->dg_xport, freebuf);
			break;

		default:
			ret = SYSERR;
	}
	restore(ps);
	return(ret);
}

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.