|
|
1.1 root 1: /*
2: * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3: *
4: * @APPLE_LICENSE_HEADER_START@
5: *
6: * The contents of this file constitute Original Code as defined in and
7: * are subject to the Apple Public Source License Version 1.1 (the
8: * "License"). You may not use this file except in compliance with the
9: * License. Please obtain a copy of the License at
10: * http://www.apple.com/publicsource and read it before using this file.
11: *
12: * This Original Code and all software distributed under the License are
13: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17: * License for the specific language governing rights and limitations
18: * under the License.
19: *
20: * @APPLE_LICENSE_HEADER_END@
21: */
22: /* Copyright (c) 1997, 1998 Apple Computer, Inc. All Rights Reserved */
23: /*
24: * @(#)ndrv.h 1.1 (MacOSX) 6/10/43
25: * Justin Walker - 970604
26: */
27:
28: #ifndef _NET_NDRV_H
29: #define _NET_NDRV_H
30:
31: struct sockaddr_ndrv
32: { unsigned char snd_len;
33: unsigned char snd_family;
34: unsigned char snd_name[IFNAMSIZ]; /* from if.h */
35: };
36:
37: /*
38: * The cb is plugged into the socket (so_pcb), and the ifnet structure
39: * of BIND is plugged in here.
40: * For now, it looks like a raw_cb up front...
41: */
42: struct ndrv_cb
43: { struct ndrv_cb *nd_next; /* Doubly-linked list */
44: struct ndrv_cb *nd_prev;
45: struct socket *nd_socket; /* Back to the socket */
46: unsigned int nd_signature; /* Just double-checking */
47: struct sockaddr_ndrv *nd_faddr;
48: struct sockaddr_ndrv *nd_laddr;
49: struct sockproto nd_proto; /* proto family, protocol */
50: struct ifnet *nd_if;
51: };
52:
53: #define sotondrvcb(so) ((struct ndrv_cb *)(so)->so_pcb)
54: #define NDRV_SIGNATURE 0x4e445256 /* "NDRV" */
55:
56: /* Nominal allocated space for NDRV sockets */
57: #define NDRVSNDQ 8192
58: #define NDRVRCVQ 8192
59:
60: #if KERNEL
61: extern struct ndrv_cb ndrvl; /* Head of controlblock list */
62: #endif
63: #endif /* _NET_NDRV_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.