xref: /freebsd/sys/rpc/netconfig.h (revision 71625ec9ad2a9bc8c09784fbd23b759830e0ee5f)
1dfdcada3SDoug Rabson /*	$NetBSD: netconfig.h,v 1.1 2000/06/02 22:57:54 fvdl Exp $	*/
2dfdcada3SDoug Rabson 
3dfdcada3SDoug Rabson 
4dfdcada3SDoug Rabson #ifndef _NETCONFIG_H_
5dfdcada3SDoug Rabson #define _NETCONFIG_H_
6dfdcada3SDoug Rabson 
7dfdcada3SDoug Rabson #include <sys/cdefs.h>
8dfdcada3SDoug Rabson 
9dfdcada3SDoug Rabson #define NETCONFIG	"/etc/netconfig"
10dfdcada3SDoug Rabson #define NETPATH		"NETPATH"
11dfdcada3SDoug Rabson 
12dfdcada3SDoug Rabson struct netconfig {
13dfdcada3SDoug Rabson 	char *nc_netid;			/* Network ID */
14dfdcada3SDoug Rabson 	unsigned long nc_semantics;	/* Semantics (see below) */
15dfdcada3SDoug Rabson 	unsigned long nc_flag;		/* Flags (see below) */
16dfdcada3SDoug Rabson 	char *nc_protofmly;		/* Protocol family */
17dfdcada3SDoug Rabson 	char *nc_proto;			/* Protocol name */
18dfdcada3SDoug Rabson 	char *nc_device;		/* Network device pathname */
19dfdcada3SDoug Rabson 	unsigned long nc_nlookups;	/* Number of directory lookup libs */
20dfdcada3SDoug Rabson 	char **nc_lookups;		/* Names of the libraries */
21dfdcada3SDoug Rabson 	unsigned long nc_unused[9];	/* reserved */
22dfdcada3SDoug Rabson };
23dfdcada3SDoug Rabson 
24dfdcada3SDoug Rabson typedef struct {
25dfdcada3SDoug Rabson 	struct netconfig **nc_head;
26dfdcada3SDoug Rabson 	struct netconfig **nc_curr;
27dfdcada3SDoug Rabson } NCONF_HANDLE;
28dfdcada3SDoug Rabson 
29dfdcada3SDoug Rabson /*
30dfdcada3SDoug Rabson  * nc_semantics values
31dfdcada3SDoug Rabson  */
32dfdcada3SDoug Rabson #define NC_TPI_CLTS	1
33dfdcada3SDoug Rabson #define NC_TPI_COTS	2
34dfdcada3SDoug Rabson #define NC_TPI_COTS_ORD	3
35dfdcada3SDoug Rabson #define NC_TPI_RAW	4
36dfdcada3SDoug Rabson 
37dfdcada3SDoug Rabson /*
38dfdcada3SDoug Rabson  * nc_flag values
39dfdcada3SDoug Rabson  */
40dfdcada3SDoug Rabson #define NC_NOFLAG	0x00
41dfdcada3SDoug Rabson #define NC_VISIBLE	0x01
42dfdcada3SDoug Rabson #define NC_BROADCAST	0x02
43dfdcada3SDoug Rabson 
44dfdcada3SDoug Rabson /*
45dfdcada3SDoug Rabson  * nc_protofmly values
46dfdcada3SDoug Rabson  */
47dfdcada3SDoug Rabson #define NC_NOPROTOFMLY	"-"
48dfdcada3SDoug Rabson #define NC_LOOPBACK	"loopback"
49dfdcada3SDoug Rabson #define NC_INET		"inet"
50dfdcada3SDoug Rabson #define NC_INET6	"inet6"
51dfdcada3SDoug Rabson #define NC_IMPLINK	"implink"
52dfdcada3SDoug Rabson #define NC_PUP		"pup"
53dfdcada3SDoug Rabson #define NC_CHAOS	"chaos"
54dfdcada3SDoug Rabson #define NC_NS		"ns"
55dfdcada3SDoug Rabson #define NC_NBS		"nbs"
56dfdcada3SDoug Rabson #define NC_ECMA		"ecma"
57dfdcada3SDoug Rabson #define NC_DATAKIT	"datakit"
58dfdcada3SDoug Rabson #define NC_CCITT	"ccitt"
59dfdcada3SDoug Rabson #define NC_SNA		"sna"
60dfdcada3SDoug Rabson #define NC_DECNET	"decnet"
61dfdcada3SDoug Rabson #define NC_DLI		"dli"
62dfdcada3SDoug Rabson #define NC_LAT		"lat"
63dfdcada3SDoug Rabson #define NC_HYLINK	"hylink"
64dfdcada3SDoug Rabson #define NC_APPLETALK	"appletalk"
65dfdcada3SDoug Rabson #define NC_NIT		"nit"
66dfdcada3SDoug Rabson #define NC_IEEE802	"ieee802"
67dfdcada3SDoug Rabson #define NC_OSI		"osi"
68dfdcada3SDoug Rabson #define NC_X25		"x25"
69dfdcada3SDoug Rabson #define NC_OSINET	"osinet"
70dfdcada3SDoug Rabson #define NC_GOSIP	"gosip"
71dfdcada3SDoug Rabson 
72dfdcada3SDoug Rabson /*
73dfdcada3SDoug Rabson  * nc_proto values
74dfdcada3SDoug Rabson  */
75dfdcada3SDoug Rabson #define NC_NOPROTO	"-"
76dfdcada3SDoug Rabson #define NC_TCP		"tcp"
77dfdcada3SDoug Rabson #define NC_UDP		"udp"
78dfdcada3SDoug Rabson #define NC_ICMP		"icmp"
79dfdcada3SDoug Rabson 
80dfdcada3SDoug Rabson __BEGIN_DECLS
81dfdcada3SDoug Rabson void *setnetconfig(void);
82dfdcada3SDoug Rabson struct netconfig *getnetconfig(void *);
83dfdcada3SDoug Rabson struct netconfig *getnetconfigent(const char *);
84dfdcada3SDoug Rabson void freenetconfigent(struct netconfig *);
85dfdcada3SDoug Rabson int endnetconfig(void *);
86dfdcada3SDoug Rabson 
87dfdcada3SDoug Rabson #ifndef _KERNEL
88dfdcada3SDoug Rabson void *setnetpath(void);
89dfdcada3SDoug Rabson struct netconfig *getnetpath(void *);
90dfdcada3SDoug Rabson int endnetpath(void *);
91dfdcada3SDoug Rabson 
92dfdcada3SDoug Rabson void nc_perror(const char *);
93dfdcada3SDoug Rabson char *nc_sperror(void);
94dfdcada3SDoug Rabson #endif
95dfdcada3SDoug Rabson 
96dfdcada3SDoug Rabson __END_DECLS
97dfdcada3SDoug Rabson 
98dfdcada3SDoug Rabson #endif /* _NETCONFIG_H_ */
99