From ef64b99e8412f2273dd2e8b3291c2f78ffc4667f Mon Sep 17 00:00:00 2001 From: roberto Date: Thu, 9 Dec 1999 13:01:21 +0000 Subject: Virgin import of ntpd 4.0.98f --- contrib/ntp/include/ntif.h | 98 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 contrib/ntp/include/ntif.h (limited to 'contrib/ntp/include/ntif.h') diff --git a/contrib/ntp/include/ntif.h b/contrib/ntp/include/ntif.h new file mode 100644 index 0000000..8377852 --- /dev/null +++ b/contrib/ntp/include/ntif.h @@ -0,0 +1,98 @@ +/* this is a hacked version of if.h from unix to contain the stuff we need only to build named (bind) with + the minimal amount of changes... by l. kahn */ + + /* + * Copyright (c) 1982, 1986 Regents of the University of California. + * All rights reserved. The Berkeley software License Agreement + * specifies the terms and conditions for redistribution. + */ + +#ifndef _NET_IF_H +#define _NET_IF_H + + +/* #pragma ident "@(#)if.h 1.3 93/06/30 SMI" +/* if.h 1.26 90/05/29 SMI; from UCB 7.1 6/4/86 */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Structures defining a network interface, providing a packet + * transport mechanism (ala level 0 of the PUP protocols). + * + * Each interface accepts output datagrams of a specified maximum + * length, and provides higher level routines with input datagrams + * received from its medium. + * + * Output occurs when the routine if_output is called, with three parameters: + * (*ifp->if_output)(ifp, m, dst) + * Here m is the mbuf chain to be sent and dst is the destination address. + * The output routine encapsulates the supplied datagram if necessary, + * and then transmits it on its medium. + * + * On input, each interface unwraps the data received by it, and either + * places it on the input queue of a internetwork datagram routine + * and posts the associated software interrupt, or passes the datagram to a raw + * packet input routine. + * + * Routines exist for locating interfaces by their addresses + * or for locating a interface on a certain network, as well as more general + * routing and gateway routines maintaining information used to locate + * interfaces. These routines live in the files if.c and route.c + */ + +/* + * Structure defining a queue for a network interface. + * + * (Would like to call this struct ``if'', but C isn't PL/1.) + */ +/* + * Interface request structure used for socket + * ioctl's. All interface ioctl's must have parameter + * definitions which begin with ifr_name. The + * remainder may be interface specific. + */ +#ifdef FD_SETSIZE +#undef FD_SETSIZE +#endif +#define FD_SETSIZE 512 +#include +typedef char *caddr_t; + +int get_winnt_interfaces(); + +struct ifreq { +#define IFNAMSIZ 16 + char ifr_name[IFNAMSIZ]; /* if name, e.g. "en0" */ + struct sockaddr ifru_addr; + char nt_mask[IFNAMSIZ]; /* new field to store mask returned from nt lookup l. kahn */ + +#define ifr_addr ifru_addr /* address */ +#define ifr_mask nt_mask /* nt mask in character form */ + +}; + +/* + * Structure used in SIOCGIFCONF request. + * Used to retrieve interface configuration + * for machine (useful for programs which + * must know all networks accessible). + */ +struct ifconf { + int ifc_len; /* size of associated buffer */ + union { + caddr_t ifcu_buf; + struct ifreq *ifcu_req; + } ifc_ifcu; +#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */ +#define ifc_req ifc_ifcu.ifcu_req /* array of structures returned */ +}; + +#ifdef __cplusplus +} +#endif + +#endif /* _NET_IF_H */ + -- cgit v1.1