diff options
Diffstat (limited to 'tirpc/netconfig.h')
-rw-r--r-- | tirpc/netconfig.h | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/tirpc/netconfig.h b/tirpc/netconfig.h new file mode 100644 index 0000000..3f1a685 --- /dev/null +++ b/tirpc/netconfig.h @@ -0,0 +1,100 @@ +#ifndef _NETCONFIG_H_ +#define _NETCONFIG_H_ + +#ifdef HAVE_FEATURES_H +#include <features.h> +#endif + +#define NETCONFIG "/etc/netconfig" +#define NETPATH "NETPATH" + +struct netconfig { + char *nc_netid; /* Network ID */ + unsigned long nc_semantics; /* Semantics (see below) */ + unsigned long nc_flag; /* Flags (see below) */ + char *nc_protofmly; /* Protocol family */ + char *nc_proto; /* Protocol name */ + char *nc_device; /* Network device pathname */ + unsigned long nc_nlookups; /* Number of directory lookup libs */ + char **nc_lookups; /* Names of the libraries */ + unsigned long nc_unused[9]; /* reserved */ +}; + +typedef struct { + struct netconfig **nc_head; + struct netconfig **nc_curr; +} NCONF_HANDLE; + +/* + * nc_semantics values + */ +#define NC_TPI_CLTS 1 +#define NC_TPI_COTS 2 +#define NC_TPI_COTS_ORD 3 +#define NC_TPI_RAW 4 + +/* + * nc_flag values + */ +#define NC_NOFLAG 0x00 +#define NC_VISIBLE 0x01 +#define NC_BROADCAST 0x02 + +/* + * nc_protofmly values + */ +#define NC_NOPROTOFMLY "-" +#define NC_LOOPBACK "loopback" +#define NC_INET "inet" +#define NC_INET6 "inet6" +#define NC_IMPLINK "implink" +#define NC_PUP "pup" +#define NC_CHAOS "chaos" +#define NC_NS "ns" +#define NC_NBS "nbs" +#define NC_ECMA "ecma" +#define NC_DATAKIT "datakit" +#define NC_CCITT "ccitt" +#define NC_SNA "sna" +#define NC_DECNET "decnet" +#define NC_DLI "dli" +#define NC_LAT "lat" +#define NC_HYLINK "hylink" +#define NC_APPLETALK "appletalk" +#define NC_NIT "nit" +#define NC_IEEE802 "ieee802" +#define NC_OSI "osi" +#define NC_X25 "x25" +#define NC_OSINET "osinet" +#define NC_GOSIP "gosip" + +/* + * nc_proto values + */ +#define NC_NOPROTO "-" +#define NC_TCP "tcp" +#define NC_UDP "udp" +#define NC_ICMP "icmp" + +#ifdef __cplusplus +extern "C" { +#endif + +extern void *setnetconfig (void); +extern struct netconfig *getnetconfig (void *); +extern struct netconfig *getnetconfigent (const char *); +extern void freenetconfigent (struct netconfig *); +extern int endnetconfig (void *); + +extern void *setnetpath (void); +extern struct netconfig *getnetpath (void *); +extern int endnetpath (void *); + +extern void nc_perror (const char *); +extern char *nc_sperror (void); + +#ifdef __cplusplus +} +#endif + +#endif /* _NETCONFIG_H_ */ |