freebsd-nq/sys/netipx
Jonathan Lemon df5e198723 Lock down the network interface queues. The queue mutex must be obtained
before adding/removing packets from the queue.  Also, the if_obytes and
if_omcasts fields should only be manipulated under protection of the mutex.

IF_ENQUEUE, IF_PREPEND, and IF_DEQUEUE perform all necessary locking on
the queue.  An IF_LOCK macro is provided, as well as the old (mutex-less)
versions of the macros in the form _IF_ENQUEUE, _IF_QFULL, for code which
needs them, but their use is discouraged.

Two new macros are introduced: IF_DRAIN() to drain a queue, and IF_HANDOFF,
which takes care of locking/enqueue, and also statistics updating/start
if necessary.
2000-11-25 07:35:38 +00:00
..
ipx_cksum.c Get rid of the old XNS checksum code and implement it the IPX way. 1999-08-28 18:21:55 +00:00
ipx_if.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ipx_input.c Lock down the network interface queues. The queue mutex must be obtained 2000-11-25 07:35:38 +00:00
ipx_ip.c Lock down the network interface queues. The queue mutex must be obtained 2000-11-25 07:35:38 +00:00
ipx_ip.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ipx_outputfl.c Calculate checksum properly for propagated IPX/NetBIOS packets. 2000-04-27 10:29:14 +00:00
ipx_pcb.c Move suser() and suser_xxx() prototypes and a related #define from 2000-10-29 16:06:56 +00:00
ipx_pcb.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ipx_proto.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ipx_tun.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ipx_usrreq.c Move suser() and suser_xxx() prototypes and a related #define from 2000-10-29 16:06:56 +00:00
ipx_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ipx.c Move suser() and suser_xxx() prototypes and a related #define from 2000-10-29 16:06:56 +00:00
ipx.h Get rid of the old XNS checksum code and implement it the IPX way. 1999-08-28 18:21:55 +00:00
README Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
spx_debug.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
spx_debug.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
spx_timer.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
spx_usrreq.c Get rid of the old XNS checksum code and implement it the IPX way. 1999-08-28 18:21:55 +00:00
spx_var.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
spx.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00

$FreeBSD$

This protocol implements IPX/SPX over Ethernet_II frame type 0x8137.
Please note: the SPX implementation may require further work and testing
to insure proper operation.

Mike Mitchell, Network Engineer
AMTECH Systems Corporation, Technology and Manufacturing
8600 Jefferson Street, Albuquerque, New Mexico 87113 (505) 856-8000
supervisor@alb.asctmd.com

John Hay
Some Company
Some Address
jhay@mikom.csir.co.za

--- Copyright Information ---

Copyright (c) 1984, 1985, 1986, 1987, 1993
The Regents of the University of California.  All rights reserved.

Modifications Copyright (c) 1995, Mike Mitchell
Modifications Copyright (c) 1995, John Hay