/*
    AUTOMATICALLY GENERATED BY tspec 2.10
    API SUBSET: svid3:netdir.h (VERSION 2.6)
*/

#ifndef __TDF_SVID3_NETDIR_H
#define __TDF_SVID3_NETDIR_H

#ifdef __cplusplus
extern "C" {
#endif

#pragma TenDRA declaration block api__svid3__netdir begin

#ifndef __TDF_SVID3__CONFIG
#pragma extend interface "../shared/svid3.api/config.h"
#endif /* __TDF_SVID3__CONFIG */
#if __SYSV_REMOTE_SERVICES
#ifndef __TDF_SVID3_NETCONFIG_H
#pragma extend interface "../svid3.api/netconfig.h"
#endif /* __TDF_SVID3_NETCONFIG_H */
#ifndef __TDF_SVID3_TIUSER_H
#pragma extend interface "../svid3.api/tiuser.h"
#endif /* __TDF_SVID3_TIUSER_H */
#pragma token STRUCT TAG nd_hostserv # svid3.netdir.nd_hostserv
#pragma token MEMBER char * : struct nd_hostserv : h_host # svid3.netdir.nd_hostserv.h_host
#pragma token MEMBER char * : struct nd_hostserv : h_serv # svid3.netdir.nd_hostserv.h_serv
#pragma token STRUCT TAG nd_addrlist # svid3.netdir.nd_addrlist
#pragma token MEMBER int : struct nd_addrlist : n_cnt # svid3.netdir.nd_addrlist.n_cnt
#pragma token MEMBER struct netbuf * : struct nd_addrlist : n_addrs # svid3.netdir.nd_addrlist.n_addrs
#pragma token STRUCT TAG nd_hostservlist # svid3.netdir.nd_hostservlist
#pragma token MEMBER int : struct nd_hostservlist : h_cnt # svid3.netdir.nd_hostservlist.h_cnt
#pragma token MEMBER struct nd_hostserv * : struct nd_hostservlist : h_hostservs # svid3.netdir.nd_hostservlist.h_hostservs
#pragma token EXP const : char * : HOST_SELF # svid3.netdir.HOST_SELF
#pragma token EXP const : char * : HOST_ANY # svid3.netdir.HOST_ANY
#pragma token EXP const : char * : HOST_BROADCAST # svid3.netdir.HOST_BROADCAST
#pragma token FUNC void (void *, int) : netdir_free # svid3.netdir.netdir_free
#pragma token FUNC int (const struct netconfig *, const struct nd_hostserv *, struct nd_addrlist **) : netdir_getbyname # svid3.netdir.netdir_getbyname
#pragma token FUNC int (const struct netconfig *, struct nd_hostservlist **, const struct netbuf *) : netdir_getbyaddr # svid3.netdir.netdir_getbyaddr
#pragma token FUNC char * (const struct netconfig *, const struct netbuf *) : taddr2uaddr # svid3.netdir.taddr2uaddr
/* I think these are wrong in the book */
#pragma token FUNC int (const struct netconfig *, int, int, void *) : netdir_options # svid3.netdir.netdir_options
#pragma token FUNC struct netbuf * (const struct netconfig *, const char *) : uaddr2taddr # svid3.netdir.uaddr2taddr
#endif /* __SYSV_REMOTE_SERVICES */

#if __SYSV_REMOTE_SERVICES
#pragma interface TAG nd_hostserv TAG nd_hostserv.h_host
#pragma interface TAG nd_hostserv.h_serv TAG nd_addrlist
#pragma interface TAG nd_addrlist.n_cnt TAG nd_addrlist.n_addrs
#pragma interface TAG nd_hostservlist TAG nd_hostservlist.h_cnt
#pragma interface TAG nd_hostservlist.h_hostservs HOST_SELF HOST_ANY
#pragma interface HOST_BROADCAST netdir_free netdir_getbyname
#pragma interface netdir_getbyaddr taddr2uaddr netdir_options uaddr2taddr
#endif /* __SYSV_REMOTE_SERVICES */

#pragma TenDRA declaration block end

#ifdef __cplusplus
}
#endif

#endif /* __TDF_SVID3_NETDIR_H */
