/* Generated by IDL compiler version OSF DCE T1.1.0-03 */
#ifndef srvsvc_v3_0_included
#define srvsvc_v3_0_included
#ifndef IDLBASE_H
#include <dce/idlbase.h>
#endif
#include <dce/rpc.h>

#ifdef __cplusplus
    extern "C" {
#endif

#ifndef nbase_v0_0_included
#include <dce/nbase.h>
#endif
extern unsigned32 NetrCharDevEnum(
    /* [in] */ handle_t h
);
extern unsigned32 NetrCharDevGetInfo(
    /* [in] */ handle_t h
);
extern unsigned32 NetrCharDevControl(
    /* [in] */ handle_t h
);
extern unsigned32 NetrCharDevQEnum(
    /* [in] */ handle_t h
);
extern unsigned32 NetrCharDevQGetInfo(
    /* [in] */ handle_t h
);
extern unsigned32 NetrCharDevQSetInfo(
    /* [in] */ handle_t h
);
extern unsigned32 NetrCharDevQPurge(
    /* [in] */ handle_t h
);
extern unsigned32 NetrCharDevQPurgeSelf(
    /* [in] */ handle_t h
);
extern unsigned32 NetrConnectionEnum(
    /* [in] */ handle_t h
);
extern unsigned32 NetrFileEnum(
    /* [in] */ handle_t h
);
extern unsigned32 NetrFileGetInfo(
    /* [in] */ handle_t h
);
extern unsigned32 NetrFileClose(
    /* [in] */ handle_t h
);
extern unsigned32 NetrSessionEnum(
    /* [in] */ handle_t h
);
extern unsigned32 NetrSessionDel(
    /* [in] */ handle_t h
);
typedef struct srvsvc_v3_0_0_tag {
idl_ushort_int *shi1_share;
unsigned32 shi1_type;
idl_ushort_int *shi1_remark;
} SHARE_INFO_1;
typedef struct  {
unsigned32 share_count;
SHARE_INFO_1 *shares;
} SHARE_INFO_1_CONTAINER;
extern unsigned32 NetrShareAdd(
    /* [in] */ handle_t h
);
typedef struct  {
unsigned32 level;
union  {
/* case(s): 1 */
SHARE_INFO_1_CONTAINER *share1;
} tagged_union;
} SHARE_ENUM_UNION;
typedef struct  {
SHARE_ENUM_UNION share_union;
} SHARE_ENUM_STRUCT;
extern unsigned32 NetrShareEnum(
    /* [in] */ handle_t h,
    /* [in] */ idl_ushort_int *ServerName,
    /* [in, out] */ unsigned32 *Level,
    /* [in, out] */ SHARE_ENUM_STRUCT *ShareInfo,
    /* [in] */ unsigned32 PreferredMaximumLength,
    /* [out] */ unsigned32 *TotalEntries,
    /* [in, out] */ unsigned32 *ResumeHandle
);
extern unsigned32 NetrShareGetInfo(
    /* [in] */ handle_t h
);
extern unsigned32 NetrShareSetInfo(
    /* [in] */ handle_t h
);
extern unsigned32 NetrShareDel(
    /* [in] */ handle_t h
);
extern unsigned32 NetrShareDelSticky(
    /* [in] */ handle_t h
);
extern unsigned32 NetrShareCheck(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerGetInfo(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerSetInfo(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerDiskEnum(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerStatisticsGet(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerTransportAdd(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerTransportEnum(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerTransportDel(
    /* [in] */ handle_t h
);
extern unsigned32 NetrSetServerServiceBits(
    /* [in] */ handle_t h
);
extern unsigned32 NetrPathType(
    /* [in] */ handle_t h
);
extern unsigned32 NetrPathCanonicalize(
    /* [in] */ handle_t h
);
extern unsigned32 NetrPathCompare(
    /* [in] */ handle_t h
);
extern unsigned32 NetrNameValidate(
    /* [in] */ handle_t h
);
extern unsigned32 NetrNameCanonicalize(
    /* [in] */ handle_t h
);
extern unsigned32 NetrNameCompare(
    /* [in] */ handle_t h
);
extern unsigned32 NetrShareEnumSticky(
    /* [in] */ handle_t h,
    /* [in] */ idl_ushort_int *ServerName,
    /* [in] */ unsigned32 Level,
    /* [in, out] */ SHARE_ENUM_STRUCT *ShareInfo,
    /* [in] */ unsigned32 PreferredMaximumLength,
    /* [out] */ unsigned32 *TotalEntries,
    /* [in, out] */ unsigned32 *ResumeHandle
);
extern unsigned32 NetrShareDelStart(
    /* [in] */ handle_t h
);
extern unsigned32 NetrShareDelCommit(
    /* [in] */ handle_t h
);
extern unsigned32 NetrGetFileSecurity(
    /* [in] */ handle_t h
);
extern unsigned32 NetrSetFileSecurity(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerTransportAddEx(
    /* [in] */ handle_t h
);
extern unsigned32 NetrServerSetServiceBitsEx(
    /* [in] */ handle_t h
);
typedef struct srvsvc_v3_0_epv_t {
unsigned32 (*NetrCharDevEnum)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrCharDevGetInfo)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrCharDevControl)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrCharDevQEnum)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrCharDevQGetInfo)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrCharDevQSetInfo)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrCharDevQPurge)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrCharDevQPurgeSelf)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrConnectionEnum)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrFileEnum)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrFileGetInfo)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrFileClose)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrSessionEnum)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrSessionDel)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrShareAdd)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrShareEnum)(
    /* [in] */ handle_t h,
    /* [in] */ idl_ushort_int *ServerName,
    /* [in, out] */ unsigned32 *Level,
    /* [in, out] */ SHARE_ENUM_STRUCT *ShareInfo,
    /* [in] */ unsigned32 PreferredMaximumLength,
    /* [out] */ unsigned32 *TotalEntries,
    /* [in, out] */ unsigned32 *ResumeHandle
);
unsigned32 (*NetrShareGetInfo)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrShareSetInfo)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrShareDel)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrShareDelSticky)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrShareCheck)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerGetInfo)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerSetInfo)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerDiskEnum)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerStatisticsGet)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerTransportAdd)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerTransportEnum)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerTransportDel)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrSetServerServiceBits)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrPathType)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrPathCanonicalize)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrPathCompare)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrNameValidate)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrNameCanonicalize)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrNameCompare)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrShareEnumSticky)(
    /* [in] */ handle_t h,
    /* [in] */ idl_ushort_int *ServerName,
    /* [in] */ unsigned32 Level,
    /* [in, out] */ SHARE_ENUM_STRUCT *ShareInfo,
    /* [in] */ unsigned32 PreferredMaximumLength,
    /* [out] */ unsigned32 *TotalEntries,
    /* [in, out] */ unsigned32 *ResumeHandle
);
unsigned32 (*NetrShareDelStart)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrShareDelCommit)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrGetFileSecurity)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrSetFileSecurity)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerTransportAddEx)(
    /* [in] */ handle_t h
);
unsigned32 (*NetrServerSetServiceBitsEx)(
    /* [in] */ handle_t h
);
} srvsvc_v3_0_epv_t;
extern rpc_if_handle_t srvsvc_v3_0_c_ifspec;
extern rpc_if_handle_t srvsvc_v3_0_s_ifspec;

#ifdef __cplusplus
    }
#endif

#endif
