Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
For ease of implementation, the full IDL is provided, where "ms-dtyp.idl" is the IDL as specified in [MS-DTYP] Appendix A.
-
import "ms-dtyp.idl"; [ uuid(4B324FC8-1670-01D3-1278-5A47BF6EE188), version(3.0), ms_union, pointer_default(unique) ] interface srvsvc { typedef [handle, string] wchar_t * SRVSVC_HANDLE; typedef struct _CONNECTION_INFO_0 { DWORD coni0_id; } CONNECTION_INFO_0, *PCONNECTION_INFO_0, *LPCONNECTION_INFO_0; typedef struct _CONNECT_INFO_0_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPCONNECTION_INFO_0 Buffer; } CONNECT_INFO_0_CONTAINER, *PCONNECT_INFO_0_CONTAINER, *LPCONNECT_INFO_0_CONTAINER; typedef struct _CONNECTION_INFO_1 { DWORD coni1_id; DWORD coni1_type; DWORD coni1_num_opens; DWORD coni1_num_users; DWORD coni1_time; [string] wchar_t * coni1_username; [string] wchar_t * coni1_netname; } CONNECTION_INFO_1, *PCONNECTION_INFO_1, *LPCONNECTION_INFO_1; typedef struct _CONNECT_INFO_1_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPCONNECTION_INFO_1 Buffer; } CONNECT_INFO_1_CONTAINER, *PCONNECT_INFO_1_CONTAINER, *LPCONNECT_INFO_1_CONTAINER; typedef [switch_type(DWORD)] union _CONNECT_ENUM_UNION { [case(0)] CONNECT_INFO_0_CONTAINER* Level0; [case(1)] CONNECT_INFO_1_CONTAINER* Level1; } CONNECT_ENUM_UNION; typedef struct _CONNECT_ENUM_STRUCT { DWORD Level; [switch_is(Level)] CONNECT_ENUM_UNION ConnectInfo; } CONNECT_ENUM_STRUCT, *PCONNECT_ENUM_STRUCT, *LPCONNECT_ENUM_STRUCT; typedef struct _FILE_INFO_2 { DWORD fi2_id; } FILE_INFO_2, *PFILE_INFO_2, *LPFILE_INFO_2; typedef struct _FILE_INFO_2_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPFILE_INFO_2 Buffer; } FILE_INFO_2_CONTAINER, *PFILE_INFO_2_CONTAINER, *LPFILE_INFO_2_CONTAINER; typedef struct _FILE_INFO_3 { DWORD fi3_id; DWORD fi3_permissions; DWORD fi3_num_locks; [string] wchar_t * fi3_pathname; [string] wchar_t * fi3_username; } FILE_INFO_3, *PFILE_INFO_3, *LPFILE_INFO_3; typedef struct _FILE_INFO_3_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPFILE_INFO_3 Buffer; } FILE_INFO_3_CONTAINER, *PFILE_INFO_3_CONTAINER, *LPFILE_INFO_3_CONTAINER; typedef [switch_type(DWORD)] union _FILE_ENUM_UNION { [case(2)] FILE_INFO_2_CONTAINER* Level2; [case(3)] FILE_INFO_3_CONTAINER* Level3; } FILE_ENUM_UNION; typedef struct _FILE_ENUM_STRUCT { DWORD Level; [switch_is(Level)] FILE_ENUM_UNION FileInfo; } FILE_ENUM_STRUCT, *PFILE_ENUM_STRUCT, *LPFILE_ENUM_STRUCT; typedef [switch_type(unsigned long)] union _FILE_INFO { [case(2)] LPFILE_INFO_2 FileInfo2; [case(3)] LPFILE_INFO_3 FileInfo3; } FILE_INFO, *PFILE_INFO, *LPFILE_INFO; typedef struct _SESSION_INFO_0 { [string] wchar_t * sesi0_cname; } SESSION_INFO_0, *PSESSION_INFO_0, *LPSESSION_INFO_0; typedef struct _SESSION_INFO_0_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSESSION_INFO_0 Buffer; } SESSION_INFO_0_CONTAINER, *PSESSION_INFO_0_CONTAINER, *LPSESSION_INFO_0_CONTAINER; typedef struct _SESSION_INFO_1 { [string] wchar_t * sesi1_cname; [string] wchar_t * sesi1_username; DWORD sesi1_num_opens; DWORD sesi1_time; DWORD sesi1_idle_time; DWORD sesi1_user_flags; } SESSION_INFO_1, *PSESSION_INFO_1, *LPSESSION_INFO_1; typedef struct _SESSION_INFO_1_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSESSION_INFO_1 Buffer; } SESSION_INFO_1_CONTAINER, *PSESSION_INFO_1_CONTAINER, *LPSESSION_INFO_1_CONTAINER; typedef struct _SESSION_INFO_2 { [string] wchar_t * sesi2_cname; [string] wchar_t * sesi2_username; DWORD sesi2_num_opens; DWORD sesi2_time; DWORD sesi2_idle_time; DWORD sesi2_user_flags; [string] wchar_t * sesi2_cltype_name; } SESSION_INFO_2, *PSESSION_INFO_2, *LPSESSION_INFO_2; typedef struct _SESSION_INFO_2_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSESSION_INFO_2 Buffer; } SESSION_INFO_2_CONTAINER, *PSESSION_INFO_2_CONTAINER, *LPSESSION_INFO_2_CONTAINER; typedef struct _SESSION_INFO_10 { [string] wchar_t * sesi10_cname; [string] wchar_t * sesi10_username; DWORD sesi10_time; DWORD sesi10_idle_time; } SESSION_INFO_10, *PSESSION_INFO_10, *LPSESSION_INFO_10; typedef struct _SESSION_INFO_10_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSESSION_INFO_10 Buffer; } SESSION_INFO_10_CONTAINER, *PSESSION_INFO_10_CONTAINER, *LPSESSION_INFO_10_CONTAINER; typedef struct _SESSION_INFO_502 { [string] wchar_t * sesi502_cname; [string] wchar_t * sesi502_username; DWORD sesi502_num_opens; DWORD sesi502_time; DWORD sesi502_idle_time; DWORD sesi502_user_flags; [string] wchar_t * sesi502_cltype_name; [string] wchar_t * sesi502_transport; } SESSION_INFO_502, *PSESSION_INFO_502, *LPSESSION_INFO_502; typedef struct _SESSION_INFO_502_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSESSION_INFO_502 Buffer; } SESSION_INFO_502_CONTAINER, *PSESSION_INFO_502_CONTAINER, *LPSESSION_INFO_502_CONTAINER; typedef [switch_type(DWORD)] union _SESSION_ENUM_UNION { [case(0)] SESSION_INFO_0_CONTAINER* Level0; [case(1)] SESSION_INFO_1_CONTAINER* Level1; [case(2)] SESSION_INFO_2_CONTAINER* Level2; [case(10)] SESSION_INFO_10_CONTAINER* Level10; [case(502)] SESSION_INFO_502_CONTAINER* Level502; } SESSION_ENUM_UNION; typedef struct _SESSION_ENUM_STRUCT { DWORD Level; [switch_is(Level)] SESSION_ENUM_UNION SessionInfo; } SESSION_ENUM_STRUCT, *PSESSION_ENUM_STRUCT, *LPSESSION_ENUM_STRUCT; typedef struct _SHARE_INFO_502_I { [string] WCHAR * shi502_netname; DWORD shi502_type; [string] WCHAR * shi502_remark; DWORD shi502_permissions; DWORD shi502_max_uses; DWORD shi502_current_uses; [string] WCHAR * shi502_path; [string] WCHAR * shi502_passwd; DWORD shi502_reserved; [size_is(shi502_reserved)] unsigned char * shi502_security_descriptor; } SHARE_INFO_502_I, *PSHARE_INFO_502_I, *LPSHARE_INFO_502_I; typedef struct _SHARE_INFO_503_I { [string] WCHAR * shi503_netname; DWORD shi503_type; [string] WCHAR * shi503_remark; DWORD shi503_permissions; DWORD shi503_max_uses; DWORD shi503_current_uses; [string] WCHAR * shi503_path; [string] WCHAR * shi503_passwd; [string] WCHAR * shi503_servername; DWORD shi503_reserved; [size_is(shi503_reserved)] PUCHAR shi503_security_descriptor; } SHARE_INFO_503_I, *PSHARE_INFO_503_I, *LPSHARE_INFO_503_I; typedef struct _SHARE_INFO_503_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSHARE_INFO_503_I Buffer; } SHARE_INFO_503_CONTAINER, *PSHARE_INFO_503_CONTAINER, *LPSHARE_INFO_503_CONTAINER; typedef struct _SHARE_INFO_1501_I { DWORD shi1501_reserved; [size_is(shi1501_reserved)] unsigned char * shi1501_security_descriptor; } SHARE_INFO_1501_I, *PSHARE_INFO_1501_I, *LPSHARE_INFO_1501_I; typedef struct _SHARE_INFO_0 { [string] wchar_t * shi0_netname; } SHARE_INFO_0, *PSHARE_INFO_0, *LPSHARE_INFO_0; typedef struct _SHARE_INFO_0_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSHARE_INFO_0 Buffer; } SHARE_INFO_0_CONTAINER; typedef struct _SHARE_INFO_1 { [string] wchar_t * shi1_netname; DWORD shi1_type; [string] wchar_t * shi1_remark; } SHARE_INFO_1, *PSHARE_INFO_1, *LPSHARE_INFO_1; typedef struct _SHARE_INFO_1_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSHARE_INFO_1 Buffer; } SHARE_INFO_1_CONTAINER; typedef struct _SHARE_INFO_2 { [string] wchar_t * shi2_netname; DWORD shi2_type; [string] wchar_t * shi2_remark; DWORD shi2_permissions; DWORD shi2_max_uses; DWORD shi2_current_uses; [string] wchar_t * shi2_path; [string] wchar_t * shi2_passwd; } SHARE_INFO_2, *PSHARE_INFO_2, *LPSHARE_INFO_2; typedef struct _SHARE_INFO_2_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSHARE_INFO_2 Buffer; } SHARE_INFO_2_CONTAINER, *PSHARE_INFO_2_CONTAINER, *LPSHARE_INFO_2_CONTAINER; typedef struct _SHARE_INFO_501 { [string] wchar_t * shi501_netname; DWORD shi501_type; [string] wchar_t * shi501_remark; DWORD shi501_flags; } SHARE_INFO_501, *PSHARE_INFO_501, *LPSHARE_INFO_501; typedef struct _SHARE_INFO_501_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSHARE_INFO_501 Buffer; } SHARE_INFO_501_CONTAINER, *PSHARE_INFO_501_CONTAINER, *LPSHARE_INFO_501_CONTAINER; typedef struct _SHARE_INFO_502_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSHARE_INFO_502_I Buffer; } SHARE_INFO_502_CONTAINER, *PSHARE_INFO_502_CONTAINER, *LPSHARE_INFO_502_CONTAINER; typedef [switch_type(DWORD)] union _SHARE_ENUM_UNION { [case(0)] SHARE_INFO_0_CONTAINER* Level0; [case(1)] SHARE_INFO_1_CONTAINER* Level1; [case(2)] SHARE_INFO_2_CONTAINER* Level2; [case(501)] SHARE_INFO_501_CONTAINER* Level501; [case(502)] SHARE_INFO_502_CONTAINER* Level502; [case(503)] SHARE_INFO_503_CONTAINER* Level503; } SHARE_ENUM_UNION; typedef struct _SHARE_ENUM_STRUCT { DWORD Level; [switch_is(Level)] SHARE_ENUM_UNION ShareInfo; } SHARE_ENUM_STRUCT, *PSHARE_ENUM_STRUCT, *LPSHARE_ENUM_STRUCT; typedef struct _SHARE_INFO_1004 { [string] wchar_t * shi1004_remark; } SHARE_INFO_1004, *PSHARE_INFO_1004, *LPSHARE_INFO_1004; typedef struct _SHARE_INFO_1006 { DWORD shi1006_max_uses; } SHARE_INFO_1006, *PSHARE_INFO_1006, *LPSHARE_INFO_1006; typedef struct _SHARE_INFO_1005 { DWORD shi1005_flags; } SHARE_INFO_1005, *PSHARE_INFO_1005, *LPSHARE_INFO_1005; //JMP: order differs in documentation typedef [switch_type(unsigned long)] union _SHARE_INFO // for Get & Set info { [case(0)] LPSHARE_INFO_0 ShareInfo0; [case(1)] LPSHARE_INFO_1 ShareInfo1; [case(2)] LPSHARE_INFO_2 ShareInfo2; [case(502)] LPSHARE_INFO_502_I ShareInfo502; [case(1004)] LPSHARE_INFO_1004 ShareInfo1004; [case(1006)] LPSHARE_INFO_1006 ShareInfo1006; [case(1501)] LPSHARE_INFO_1501_I ShareInfo1501; [default] ; [case(1005)] LPSHARE_INFO_1005 ShareInfo1005; [case(501)] LPSHARE_INFO_501 ShareInfo501; [case(503)] LPSHARE_INFO_503_I ShareInfo503; } SHARE_INFO, *PSHARE_INFO, *LPSHARE_INFO; typedef struct _SERVER_INFO_102 { DWORD sv102_platform_id; [string] wchar_t * sv102_name; DWORD sv102_version_major; DWORD sv102_version_minor; DWORD sv102_type; [string] wchar_t * sv102_comment; DWORD sv102_users; long sv102_disc; int sv102_hidden; DWORD sv102_announce; DWORD sv102_anndelta; DWORD sv102_licenses; [string] wchar_t * sv102_userpath; } SERVER_INFO_102, *PSERVER_INFO_102, *LPSERVER_INFO_102; typedef struct _SERVER_INFO_103 { DWORD sv103_platform_id; [string] wchar_t* sv103_name; DWORD sv103_version_major; DWORD sv103_version_minor; DWORD sv103_type; [string] wchar_t* sv103_comment; DWORD sv103_users; LONG sv103_disc; BOOL sv103_hidden; DWORD sv103_announce; DWORD sv103_anndelta; DWORD sv103_licenses; [string] wchar_t* sv103_userpath; DWORD sv103_capabilities; } SERVER_INFO_103, *PSERVER_INFO_103, *LPSERVER_INFO_103; typedef struct _SERVER_INFO_502 { DWORD sv502_sessopens; DWORD sv502_sessvcs; DWORD sv502_opensearch; DWORD sv502_sizreqbuf; DWORD sv502_initworkitems; DWORD sv502_maxworkitems; DWORD sv502_rawworkitems; DWORD sv502_irpstacksize; DWORD sv502_maxrawbuflen; DWORD sv502_sessusers; DWORD sv502_sessconns; DWORD sv502_maxpagedmemoryusage; DWORD sv502_maxnonpagedmemoryusage; int sv502_enablesoftcompat; int sv502_enableforcedlogoff; int sv502_timesource; int sv502_acceptdownlevelapis; int sv502_lmannounce; } SERVER_INFO_502, *PSERVER_INFO_502, *LPSERVER_INFO_502; typedef struct _SERVER_INFO_503 { DWORD sv503_sessopens; DWORD sv503_sessvcs; DWORD sv503_opensearch; DWORD sv503_sizreqbuf; DWORD sv503_initworkitems; DWORD sv503_maxworkitems; DWORD sv503_rawworkitems; DWORD sv503_irpstacksize; DWORD sv503_maxrawbuflen; DWORD sv503_sessusers; DWORD sv503_sessconns; DWORD sv503_maxpagedmemoryusage; DWORD sv503_maxnonpagedmemoryusage; int sv503_enablesoftcompat; int sv503_enableforcedlogoff; int sv503_timesource; int sv503_acceptdownlevelapis; int sv503_lmannounce; [string] wchar_t * sv503_domain; DWORD sv503_maxcopyreadlen; DWORD sv503_maxcopywritelen; DWORD sv503_minkeepsearch; DWORD sv503_maxkeepsearch; DWORD sv503_minkeepcomplsearch; DWORD sv503_maxkeepcomplsearch; DWORD sv503_threadcountadd; DWORD sv503_numblockthreads; DWORD sv503_scavtimeout; DWORD sv503_minrcvqueue; DWORD sv503_minfreeworkitems; DWORD sv503_xactmemsize; DWORD sv503_threadpriority; DWORD sv503_maxmpxct; DWORD sv503_oplockbreakwait; DWORD sv503_oplockbreakresponsewait; int sv503_enableoplocks; int sv503_enableoplockforceclose; int sv503_enablefcbopens; int sv503_enableraw; int sv503_enablesharednetdrives; DWORD sv503_minfreeconnections; DWORD sv503_maxfreeconnections; } SERVER_INFO_503, *PSERVER_INFO_503, *LPSERVER_INFO_503; typedef struct _SERVER_INFO_599 { DWORD sv599_sessopens; DWORD sv599_sessvcs; DWORD sv599_opensearch; DWORD sv599_sizreqbuf; DWORD sv599_initworkitems; DWORD sv599_maxworkitems; DWORD sv599_rawworkitems; DWORD sv599_irpstacksize; DWORD sv599_maxrawbuflen; DWORD sv599_sessusers; DWORD sv599_sessconns; DWORD sv599_maxpagedmemoryusage; DWORD sv599_maxnonpagedmemoryusage; int sv599_enablesoftcompat; int sv599_enableforcedlogoff; int sv599_timesource; int sv599_acceptdownlevelapis; int sv599_lmannounce; [string] wchar_t * sv599_domain; DWORD sv599_maxcopyreadlen; DWORD sv599_maxcopywritelen; DWORD sv599_minkeepsearch; DWORD sv599_maxkeepsearch; DWORD sv599_minkeepcomplsearch; DWORD sv599_maxkeepcomplsearch; DWORD sv599_threadcountadd; DWORD sv599_numblockthreads; DWORD sv599_scavtimeout; DWORD sv599_minrcvqueue; DWORD sv599_minfreeworkitems; DWORD sv599_xactmemsize; DWORD sv599_threadpriority; DWORD sv599_maxmpxct; DWORD sv599_oplockbreakwait; DWORD sv599_oplockbreakresponsewait; int sv599_enableoplocks; int sv599_enableoplockforceclose; int sv599_enablefcbopens; int sv599_enableraw; int sv599_enablesharednetdrives; DWORD sv599_minfreeconnections; DWORD sv599_maxfreeconnections; DWORD sv599_initsesstable; DWORD sv599_initconntable; DWORD sv599_initfiletable; DWORD sv599_initsearchtable; DWORD sv599_alertschedule; DWORD sv599_errorthreshold; DWORD sv599_networkerrorthreshold; DWORD sv599_diskspacethreshold; DWORD sv599_reserved; DWORD sv599_maxlinkdelay; DWORD sv599_minlinkthroughput; DWORD sv599_linkinfovalidtime; DWORD sv599_scavqosinfoupdatetime; DWORD sv599_maxworkitemidletime; } SERVER_INFO_599, *PSERVER_INFO_599, *LPSERVER_INFO_599; typedef struct _SERVER_INFO_1005 { [string] wchar_t * sv1005_comment; } SERVER_INFO_1005, *PSERVER_INFO_1005, *LPSERVER_INFO_1005; typedef struct _SERVER_INFO_1107 { DWORD sv1107_users; } SERVER_INFO_1107, *PSERVER_INFO_1107, *LPSERVER_INFO_1107; typedef struct _SERVER_INFO_1010 { long sv1010_disc; } SERVER_INFO_1010, *PSERVER_INFO_1010, *LPSERVER_INFO_1010; typedef struct _SERVER_INFO_1016 { int sv1016_hidden; } SERVER_INFO_1016, *PSERVER_INFO_1016, *LPSERVER_INFO_1016; typedef struct _SERVER_INFO_1017 { DWORD sv1017_announce; } SERVER_INFO_1017, *PSERVER_INFO_1017, *LPSERVER_INFO_1017; typedef struct _SERVER_INFO_1018 { DWORD sv1018_anndelta; } SERVER_INFO_1018, *PSERVER_INFO_1018, *LPSERVER_INFO_1018; typedef struct _SERVER_INFO_1501 { DWORD sv1501_sessopens; } SERVER_INFO_1501, *PSERVER_INFO_1501, *LPSERVER_INFO_1501; typedef struct _SERVER_INFO_1502 { DWORD sv1502_sessvcs; } SERVER_INFO_1502, *PSERVER_INFO_1502, *LPSERVER_INFO_1502; typedef struct _SERVER_INFO_1503 { DWORD sv1503_opensearch; } SERVER_INFO_1503, *PSERVER_INFO_1503, *LPSERVER_INFO_1503; typedef struct _SERVER_INFO_1506 { DWORD sv1506_maxworkitems; } SERVER_INFO_1506, *PSERVER_INFO_1506, *LPSERVER_INFO_1506; typedef struct _SERVER_INFO_1510 { DWORD sv1510_sessusers; } SERVER_INFO_1510, *PSERVER_INFO_1510, *LPSERVER_INFO_1510; typedef struct _SERVER_INFO_1511 { DWORD sv1511_sessconns; } SERVER_INFO_1511, *PSERVER_INFO_1511, *LPSERVER_INFO_1511; typedef struct _SERVER_INFO_1512 { DWORD sv1512_maxnonpagedmemoryusage; } SERVER_INFO_1512, *PSERVER_INFO_1512, *LPSERVER_INFO_1512; typedef struct _SERVER_INFO_1513 { DWORD sv1513_maxpagedmemoryusage; } SERVER_INFO_1513, *PSERVER_INFO_1513, *LPSERVER_INFO_1513; typedef struct _SERVER_INFO_1514 { int sv1514_enablesoftcompat; } SERVER_INFO_1514, *PSERVER_INFO_1514, *LPSERVER_INFO_1514; typedef struct _SERVER_INFO_1515 { int sv1515_enableforcedlogoff; } SERVER_INFO_1515, *PSERVER_INFO_1515, *LPSERVER_INFO_1515; typedef struct _SERVER_INFO_1516 { int sv1516_timesource; } SERVER_INFO_1516, *PSERVER_INFO_1516, *LPSERVER_INFO_1516; typedef struct _SERVER_INFO_1518 { int sv1518_lmannounce; } SERVER_INFO_1518, *PSERVER_INFO_1518, *LPSERVER_INFO_1518; typedef struct _SERVER_INFO_1523 { DWORD sv1523_maxkeepsearch; } SERVER_INFO_1523, *PSERVER_INFO_1523, *LPSERVER_INFO_1523; typedef struct _SERVER_INFO_1528 { DWORD sv1528_scavtimeout; } SERVER_INFO_1528, *PSERVER_INFO_1528, *LPSERVER_INFO_1528; typedef struct _SERVER_INFO_1529 { DWORD sv1529_minrcvqueue; } SERVER_INFO_1529, *PSERVER_INFO_1529, *LPSERVER_INFO_1529; typedef struct _SERVER_INFO_1530 { DWORD sv1530_minfreeworkitems; } SERVER_INFO_1530, *PSERVER_INFO_1530, *LPSERVER_INFO_1530; typedef struct _SERVER_INFO_1533 { DWORD sv1533_maxmpxct; } SERVER_INFO_1533, *PSERVER_INFO_1533, *LPSERVER_INFO_1533; typedef struct _SERVER_INFO_1534 { DWORD sv1534_oplockbreakwait; } SERVER_INFO_1534, *PSERVER_INFO_1534, *LPSERVER_INFO_1534; typedef struct _SERVER_INFO_1535 { DWORD sv1535_oplockbreakresponsewait; } SERVER_INFO_1535, *PSERVER_INFO_1535, *LPSERVER_INFO_1535; typedef struct _SERVER_INFO_1536 { int sv1536_enableoplocks; } SERVER_INFO_1536, *PSERVER_INFO_1536, *LPSERVER_INFO_1536; typedef struct _SERVER_INFO_1538 { int sv1538_enablefcbopens; } SERVER_INFO_1538, *PSERVER_INFO_1538, *LPSERVER_INFO_1538; typedef struct _SERVER_INFO_1539 { int sv1539_enableraw; } SERVER_INFO_1539, *PSERVER_INFO_1539, *LPSERVER_INFO_1539; typedef struct _SERVER_INFO_1540 { int sv1540_enablesharednetdrives; } SERVER_INFO_1540, *PSERVER_INFO_1540, *LPSERVER_INFO_1540; typedef struct _SERVER_INFO_1541 { int sv1541_minfreeconnections; } SERVER_INFO_1541, *PSERVER_INFO_1541, *LPSERVER_INFO_1541; typedef struct _SERVER_INFO_1542 { int sv1542_maxfreeconnections; } SERVER_INFO_1542, *PSERVER_INFO_1542, *LPSERVER_INFO_1542; typedef struct _SERVER_INFO_1543 { DWORD sv1543_initsesstable; } SERVER_INFO_1543, *PSERVER_INFO_1543, *LPSERVER_INFO_1543; typedef struct _SERVER_INFO_1544 { DWORD sv1544_initconntable; } SERVER_INFO_1544, *PSERVER_INFO_1544, *LPSERVER_INFO_1544; typedef struct _SERVER_INFO_1545 { DWORD sv1545_initfiletable; } SERVER_INFO_1545, *PSERVER_INFO_1545, *LPSERVER_INFO_1545; typedef struct _SERVER_INFO_1546 { DWORD sv1546_initsearchtable; } SERVER_INFO_1546, *PSERVER_INFO_1546, *LPSERVER_INFO_1546; typedef struct _SERVER_INFO_1547 { DWORD sv1547_alertschedule; } SERVER_INFO_1547, *PSERVER_INFO_1547, *LPSERVER_INFO_1547; typedef struct _SERVER_INFO_1548 { DWORD sv1548_errorthreshold; } SERVER_INFO_1548, *PSERVER_INFO_1548, *LPSERVER_INFO_1548; typedef struct _SERVER_INFO_1549 { DWORD sv1549_networkerrorthreshold; } SERVER_INFO_1549, *PSERVER_INFO_1549, *LPSERVER_INFO_1549; typedef struct _SERVER_INFO_1550 { DWORD sv1550_diskspacethreshold; } SERVER_INFO_1550, *PSERVER_INFO_1550, *LPSERVER_INFO_1550; typedef struct _SERVER_INFO_1552 { DWORD sv1552_maxlinkdelay; } SERVER_INFO_1552, *PSERVER_INFO_1552, *LPSERVER_INFO_1552; typedef struct _SERVER_INFO_1553 { DWORD sv1553_minlinkthroughput; } SERVER_INFO_1553, *PSERVER_INFO_1553, *LPSERVER_INFO_1553; typedef struct _SERVER_INFO_1554 { DWORD sv1554_linkinfovalidtime; } SERVER_INFO_1554, *PSERVER_INFO_1554, *LPSERVER_INFO_1554; typedef struct _SERVER_INFO_1555 { DWORD sv1555_scavqosinfoupdatetime; } SERVER_INFO_1555, *PSERVER_INFO_1555, *LPSERVER_INFO_1555; typedef struct _SERVER_INFO_1556 { DWORD sv1556_maxworkitemidletime; } SERVER_INFO_1556, *PSERVER_INFO_1556, *LPSERVER_INFO_1556; typedef [switch_type(unsigned long)] union _SERVER_INFO { [case(100)] LPSERVER_INFO_100 ServerInfo100; [case(101)] LPSERVER_INFO_101 ServerInfo101; [case(102)] LPSERVER_INFO_102 ServerInfo102; [case(103)] LPSERVER_INFO_103 ServerInfo103; [case(502)] LPSERVER_INFO_502 ServerInfo502; [case(503)] LPSERVER_INFO_503 ServerInfo503; [case(599)] LPSERVER_INFO_599 ServerInfo599; [case(1005)] LPSERVER_INFO_1005 ServerInfo1005; [case(1107)] LPSERVER_INFO_1107 ServerInfo1107; [case(1010)] LPSERVER_INFO_1010 ServerInfo1010; [case(1016)] LPSERVER_INFO_1016 ServerInfo1016; [case(1017)] LPSERVER_INFO_1017 ServerInfo1017; [case(1018)] LPSERVER_INFO_1018 ServerInfo1018; [case(1501)] LPSERVER_INFO_1501 ServerInfo1501; [case(1502)] LPSERVER_INFO_1502 ServerInfo1502; [case(1503)] LPSERVER_INFO_1503 ServerInfo1503; [case(1506)] LPSERVER_INFO_1506 ServerInfo1506; [case(1510)] LPSERVER_INFO_1510 ServerInfo1510; [case(1511)] LPSERVER_INFO_1511 ServerInfo1511; [case(1512)] LPSERVER_INFO_1512 ServerInfo1512; [case(1513)] LPSERVER_INFO_1513 ServerInfo1513; [case(1514)] LPSERVER_INFO_1514 ServerInfo1514; [case(1515)] LPSERVER_INFO_1515 ServerInfo1515; [case(1516)] LPSERVER_INFO_1516 ServerInfo1516; [case(1518)] LPSERVER_INFO_1518 ServerInfo1518; [case(1523)] LPSERVER_INFO_1523 ServerInfo1523; [case(1528)] LPSERVER_INFO_1528 ServerInfo1528; [case(1529)] LPSERVER_INFO_1529 ServerInfo1529; [case(1530)] LPSERVER_INFO_1530 ServerInfo1530; [case(1533)] LPSERVER_INFO_1533 ServerInfo1533; [case(1534)] LPSERVER_INFO_1534 ServerInfo1534; [case(1535)] LPSERVER_INFO_1535 ServerInfo1535; [case(1536)] LPSERVER_INFO_1536 ServerInfo1536; [case(1538)] LPSERVER_INFO_1538 ServerInfo1538; [case(1539)] LPSERVER_INFO_1539 ServerInfo1539; [case(1540)] LPSERVER_INFO_1540 ServerInfo1540; [case(1541)] LPSERVER_INFO_1541 ServerInfo1541; [case(1542)] LPSERVER_INFO_1542 ServerInfo1542; [case(1543)] LPSERVER_INFO_1543 ServerInfo1543; [case(1544)] LPSERVER_INFO_1544 ServerInfo1544; [case(1545)] LPSERVER_INFO_1545 ServerInfo1545; [case(1546)] LPSERVER_INFO_1546 ServerInfo1546; [case(1547)] LPSERVER_INFO_1547 ServerInfo1547; [case(1548)] LPSERVER_INFO_1548 ServerInfo1548; [case(1549)] LPSERVER_INFO_1549 ServerInfo1549; [case(1550)] LPSERVER_INFO_1550 ServerInfo1550; [case(1552)] LPSERVER_INFO_1552 ServerInfo1552; [case(1553)] LPSERVER_INFO_1553 ServerInfo1553; [case(1554)] LPSERVER_INFO_1554 ServerInfo1554; [case(1555)] LPSERVER_INFO_1555 ServerInfo1555; [case(1556)] LPSERVER_INFO_1556 ServerInfo1556; } SERVER_INFO, *PSERVER_INFO, *LPSERVER_INFO; typedef struct _DISK_INFO { [string] WCHAR Disk[3]; } DISK_INFO, *PDISK_INFO, *LPDISK_INFO; typedef struct _DISK_ENUM_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead), length_is(EntriesRead)] LPDISK_INFO Buffer; } DISK_ENUM_CONTAINER; typedef struct _SERVER_TRANSPORT_INFO_0 { DWORD svti0_numberofvcs; [string] wchar_t * svti0_transportname; [size_is(svti0_transportaddresslength)] unsigned char * svti0_transportaddress; DWORD svti0_transportaddresslength; [string] wchar_t * svti0_networkaddress; } SERVER_TRANSPORT_INFO_0, *PSERVER_TRANSPORT_INFO_0, *LPSERVER_TRANSPORT_INFO_0; typedef struct _SERVER_XPORT_INFO_0_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSERVER_TRANSPORT_INFO_0 Buffer; } SERVER_XPORT_INFO_0_CONTAINER, *PSERVER_XPORT_INFO_0_CONTAINER; typedef struct _SERVER_TRANSPORT_INFO_1 { DWORD svti1_numberofvcs; [string] wchar_t * svti1_transportname; [size_is(svti1_transportaddresslength)] unsigned char * svti1_transportaddress; DWORD svti1_transportaddresslength; [string] wchar_t * svti1_networkaddress; [string] wchar_t * svti1_domain; } SERVER_TRANSPORT_INFO_1, *PSERVER_TRANSPORT_INFO_1, *LPSERVER_TRANSPORT_INFO_1; typedef struct _SERVER_XPORT_INFO_1_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSERVER_TRANSPORT_INFO_1 Buffer; } SERVER_XPORT_INFO_1_CONTAINER, *PSERVER_XPORT_INFO_1_CONTAINER; typedef struct _SERVER_TRANSPORT_INFO_2 { DWORD svti2_numberofvcs; [string] wchar_t * svti2_transportname; [size_is(svti2_transportaddresslength)] unsigned char * svti2_transportaddress; DWORD svti2_transportaddresslength; [string] wchar_t * svti2_networkaddress; [string] wchar_t * svti2_domain; unsigned long svti2_flags; } SERVER_TRANSPORT_INFO_2, *PSERVER_TRANSPORT_INFO_2, *LPSERVER_TRANSPORT_INFO_2; typedef struct _SERVER_XPORT_INFO_2_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSERVER_TRANSPORT_INFO_2 Buffer; } SERVER_XPORT_INFO_2_CONTAINER, *PSERVER_XPORT_INFO_2_CONTAINER; typedef struct _SERVER_TRANSPORT_INFO_3 { DWORD svti3_numberofvcs; [string] wchar_t * svti3_transportname; [size_is(svti3_transportaddresslength)] unsigned char * svti3_transportaddress; DWORD svti3_transportaddresslength; [string] wchar_t * svti3_networkaddress; [string] wchar_t * svti3_domain; unsigned long svti3_flags; DWORD svti3_passwordlength; unsigned char svti3_password[ 256 ]; } SERVER_TRANSPORT_INFO_3, *PSERVER_TRANSPORT_INFO_3, *LPSERVER_TRANSPORT_INFO_3; typedef struct _SERVER_XPORT_INFO_3_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSERVER_TRANSPORT_INFO_3 Buffer; } SERVER_XPORT_INFO_3_CONTAINER, *PSERVER_XPORT_INFO_3_CONTAINER; typedef [switch_type(unsigned long)] union _TRANSPORT_INFO { [case(0)] SERVER_TRANSPORT_INFO_0 Transport0; [case(1)] SERVER_TRANSPORT_INFO_1 Transport1; [case(2)] SERVER_TRANSPORT_INFO_2 Transport2; [case(3)] SERVER_TRANSPORT_INFO_3 Transport3; } TRANSPORT_INFO, *PTRANSPORT_INFO, *LPTRANSPORT_INFO; typedef [switch_type(DWORD)] union _SERVER_XPORT_ENUM_UNION { [case(0)] PSERVER_XPORT_INFO_0_CONTAINER Level0; [case(1)] PSERVER_XPORT_INFO_1_CONTAINER Level1; [case(2)] PSERVER_XPORT_INFO_2_CONTAINER Level2; [case(3)] PSERVER_XPORT_INFO_3_CONTAINER Level3; } SERVER_XPORT_ENUM_UNION; typedef struct _SERVER_XPORT_ENUM_STRUCT { DWORD Level; [switch_is(Level)] SERVER_XPORT_ENUM_UNION XportInfo; } SERVER_XPORT_ENUM_STRUCT, *PSERVER_XPORT_ENUM_STRUCT, *LPSERVER_XPORT_ENUM_STRUCT; typedef [context_handle] void *SHARE_DEL_HANDLE; typedef SHARE_DEL_HANDLE *PSHARE_DEL_HANDLE; typedef struct _ADT_SECURITY_DESCRIPTOR { DWORD Length; [size_is(Length)] unsigned char * Buffer; } ADT_SECURITY_DESCRIPTOR, *PADT_SECURITY_DESCRIPTOR; typedef struct _STAT_SERVER_0 { DWORD sts0_start; DWORD sts0_fopens; DWORD sts0_devopens; DWORD sts0_jobsqueued; DWORD sts0_sopens; DWORD sts0_stimedout; DWORD sts0_serrorout; DWORD sts0_pwerrors; DWORD sts0_permerrors; DWORD sts0_syserrors; DWORD sts0_bytessent_low; DWORD sts0_bytessent_high; DWORD sts0_bytesrcvd_low; DWORD sts0_bytesrcvd_high; DWORD sts0_avresponse; DWORD sts0_reqbufneed; DWORD sts0_bigbufneed; } STAT_SERVER_0, *PSTAT_SERVER_0, *LPSTAT_SERVER_0; typedef struct _TIME_OF_DAY_INFO { DWORD tod_elapsedt; DWORD tod_msecs; DWORD tod_hours; DWORD tod_mins; DWORD tod_secs; DWORD tod_hunds; long tod_timezone; DWORD tod_tinterval; DWORD tod_day; DWORD tod_month; DWORD tod_year; DWORD tod_weekday; } TIME_OF_DAY_INFO, *PTIME_OF_DAY_INFO, *LPTIME_OF_DAY_INFO; typedef struct _NET_DFS_ENTRY_ID { GUID Uid; [string] WCHAR * Prefix; } NET_DFS_ENTRY_ID, *LPNET_DFS_ENTRY_ID; typedef struct _NET_DFS_ENTRY_ID_CONTAINER { unsigned long Count; [size_is(Count)] LPNET_DFS_ENTRY_ID Buffer; } NET_DFS_ENTRY_ID_CONTAINER, *LPNET_DFS_ENTRY_ID_CONTAINER; typedef struct _DFS_SITENAME_INFO { unsigned long SiteFlags; [string,unique] WCHAR * SiteName; } DFS_SITENAME_INFO, *PDFS_SITENAME_INFO, *LPDFS_SITENAME_INFO; typedef struct _DFS_SITELIST_INFO { unsigned long cSites; [size_is(cSites)] DFS_SITENAME_INFO Site[]; } DFS_SITELIST_INFO, *PDFS_SITELIST_INFO, *LPDFS_SITELIST_INFO; typedef struct _SERVER_ALIAS_INFO_0 { [string] LMSTR srvai0_alias; [string] LMSTR srvai0_target; BOOLEAN srvai0_default; ULONG srvai0_reserved; }SERVER_ALIAS_INFO_0, *PSERVER_ALIAS_INFO_0, *LPSERVER_ALIAS_INFO_0; typedef struct _SERVER_ALIAS_INFO_0_CONTAINER { DWORD EntriesRead; [size_is(EntriesRead)] LPSERVER_ALIAS_INFO_0 Buffer; } SERVER_ALIAS_INFO_0_CONTAINER; typedef struct _SERVER_ALIAS_ENUM_STRUCT { DWORD Level; [switch_is(Level)] union _SERVER_ALIAS_ENUM_UNION { [case(0)] SERVER_ALIAS_INFO_0_CONTAINER *Level0; } ServerAliasInfo; }SERVER_ALIAS_ENUM_STRUCT, *PSERVER_ALIAS_ENUM_STRUCT, *LPSERVER_ALIAS_ENUM_STRUCT; typedef [switch_type(unsigned long)] union _SERVER_ALIAS_INFO { // for Get & Set Info [case(0)] LPSERVER_ALIAS_INFO_0 ServerAliasInfo0; } SERVER_ALIAS_INFO, *PSERVER_ALIAS_INFO, *LPSERVER_ALIAS_INFO; // This method not used on the wire void Opnum0NotUsedOnWire(void); // This method not used on the wire void Opnum1NotUsedOnWire(void); // This method not used on the wire void Opnum2NotUsedOnWire(void); // This method not used on the wire void Opnum3NotUsedOnWire(void); // This method not used on the wire void Opnum4NotUsedOnWire(void); // This method not used on the wire void Opnum5NotUsedOnWire(void); // This method not used on the wire void Opnum6NotUsedOnWire(void); // This method not used on the wire void Opnum7NotUsedOnWire(void); NET_API_STATUS NetrConnectionEnum ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string,unique] WCHAR * Qualifier, [in,out] LPCONNECT_ENUM_STRUCT InfoStruct, [in] DWORD PreferedMaximumLength, [out] DWORD * TotalEntries, [in,out,unique] DWORD * ResumeHandle ); NET_API_STATUS NetrFileEnum ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string,unique] WCHAR * BasePath, [in,string,unique] WCHAR * UserName, [in,out] PFILE_ENUM_STRUCT InfoStruct, [in] DWORD PreferedMaximumLength, [out] DWORD * TotalEntries, [in,out,unique] DWORD * ResumeHandle ); NET_API_STATUS NetrFileGetInfo ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD FileId, [in] DWORD Level, [out, switch_is(Level)] LPFILE_INFO InfoStruct ); NET_API_STATUS NetrFileClose ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD FileId ); NET_API_STATUS NetrSessionEnum ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string,unique] WCHAR * ClientName, [in,string,unique] WCHAR * UserName, [in,out] PSESSION_ENUM_STRUCT InfoStruct, [in] DWORD PreferedMaximumLength, [out] DWORD * TotalEntries, [in,out,unique] DWORD * ResumeHandle ); NET_API_STATUS NetrSessionDel ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string,unique] WCHAR * ClientName, [in,string,unique] WCHAR * UserName ); NET_API_STATUS NetrShareAdd ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in, switch_is(Level)] LPSHARE_INFO InfoStruct, [in,out,unique] DWORD * ParmErr ); NET_API_STATUS NetrShareEnum ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,out] LPSHARE_ENUM_STRUCT InfoStruct, [in] DWORD PreferedMaximumLength, [out] DWORD * TotalEntries, [in,out,unique] DWORD * ResumeHandle ); NET_API_STATUS NetrShareGetInfo ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * NetName, [in] DWORD Level, [out, switch_is(Level)] LPSHARE_INFO InfoStruct ); NET_API_STATUS NetrShareSetInfo ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * NetName, [in] DWORD Level, [in, switch_is(Level)] LPSHARE_INFO ShareInfo, [in,out,unique] DWORD * ParmErr ); NET_API_STATUS NetrShareDel ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * NetName, [in] DWORD Reserved ); NET_API_STATUS NetrShareDelSticky ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * NetName, [in] DWORD Reserved ); NET_API_STATUS NetrShareCheck ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * Device, [out] DWORD * Type ); NET_API_STATUS NetrServerGetInfo ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [out, switch_is(Level)] LPSERVER_INFO InfoStruct ); NET_API_STATUS NetrServerSetInfo ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in, switch_is(Level)] LPSERVER_INFO ServerInfo, [in,out,unique] DWORD * ParmErr ); NET_API_STATUS NetrServerDiskEnum ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in,out] DISK_ENUM_CONTAINER *DiskInfoStruct, [in] DWORD PreferedMaximumLength, [out] DWORD * TotalEntries, [in,out,unique] DWORD * ResumeHandle ); NET_API_STATUS NetrServerStatisticsGet ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string,unique] WCHAR * Service, [in] DWORD Level, [in] DWORD Options, [out] LPSTAT_SERVER_0 *InfoStruct ); NET_API_STATUS NetrServerTransportAdd ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in] LPSERVER_TRANSPORT_INFO_0 Buffer ); NET_API_STATUS NetrServerTransportEnum ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,out] LPSERVER_XPORT_ENUM_STRUCT InfoStruct, [in] DWORD PreferedMaximumLength, [out] DWORD * TotalEntries, [in,out,unique] DWORD * ResumeHandle ); NET_API_STATUS NetrServerTransportDel ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in] LPSERVER_TRANSPORT_INFO_0 Buffer ); NET_API_STATUS NetrRemoteTOD ( [in,string,unique] SRVSVC_HANDLE ServerName, [out] LPTIME_OF_DAY_INFO *BufferPtr ); // This method not used on the wire void Opnum29NotUsedOnWire(void); NET_API_STATUS NetprPathType( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * PathName, [out] DWORD * PathType, [in] DWORD Flags ); NET_API_STATUS NetprPathCanonicalize( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * PathName, [out,size_is(OutbufLen)] unsigned char * Outbuf, [in,range(0, 64000)] DWORD OutbufLen, [in,string] WCHAR * Prefix, [in,out] DWORD * PathType, [in] DWORD Flags ); long NetprPathCompare( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * PathName1, [in,string] WCHAR * PathName2, [in] DWORD PathType, [in] DWORD Flags ); NET_API_STATUS NetprNameValidate( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * Name, [in] DWORD NameType, [in] DWORD Flags ); NET_API_STATUS NetprNameCanonicalize( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * Name, [out, size_is(OutbufLen)] WCHAR * Outbuf, [in,range(0, 64000)] DWORD OutbufLen, [in] DWORD NameType, [in] DWORD Flags ); long NetprNameCompare( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * Name1, [in,string] WCHAR * Name2, [in] DWORD NameType, [in] DWORD Flags ); NET_API_STATUS NetrShareEnumSticky ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,out] LPSHARE_ENUM_STRUCT InfoStruct, [in] DWORD PreferedMaximumLength, [out] DWORD * TotalEntries, [in,out,unique] DWORD * ResumeHandle ); NET_API_STATUS NetrShareDelStart ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * NetName, [in] DWORD Reserved, [out] PSHARE_DEL_HANDLE ContextHandle ); NET_API_STATUS NetrShareDelCommit ( [in, out] PSHARE_DEL_HANDLE ContextHandle ); DWORD NetrpGetFileSecurity ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string,unique] WCHAR * ShareName, [in,string] WCHAR * lpFileName, [in] SECURITY_INFORMATION RequestedInformation, [out] PADT_SECURITY_DESCRIPTOR *SecurityDescriptor ); DWORD NetrpSetFileSecurity ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string,unique] WCHAR * ShareName, [in,string] WCHAR * lpFileName, [in] SECURITY_INFORMATION SecurityInformation, [in] PADT_SECURITY_DESCRIPTOR SecurityDescriptor ); NET_API_STATUS NetrServerTransportAddEx ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in, switch_is(Level)] LPTRANSPORT_INFO Buffer ); // This method not used on the wire void Opnum42NotUsedOnWire(void); NET_API_STATUS NetrDfsGetVersion( [in,string,unique] SRVSVC_HANDLE ServerName, [out] DWORD * Version ); NET_API_STATUS NetrDfsCreateLocalPartition ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * ShareName, [in] GUID * EntryUid, [in,string] WCHAR * EntryPrefix, [in,string] WCHAR * ShortName, [in] LPNET_DFS_ENTRY_ID_CONTAINER RelationInfo, [in] int Force ); NET_API_STATUS NetrDfsDeleteLocalPartition ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] GUID * Uid, [in,string] WCHAR * Prefix ); NET_API_STATUS NetrDfsSetLocalVolumeState ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] GUID * Uid, [in,string] WCHAR * Prefix, [in] unsigned long State ); // This method not used on the wire void Opnum47NotUsedOnWire(void); NET_API_STATUS NetrDfsCreateExitPoint ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] GUID * Uid, [in,string] WCHAR * Prefix, [in] unsigned long Type, [in, range(0,32) ] DWORD ShortPrefixLen, [out, size_is(ShortPrefixLen)] WCHAR * ShortPrefix ); NET_API_STATUS NetrDfsDeleteExitPoint ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] GUID * Uid, [in,string] WCHAR * Prefix, [in] unsigned long Type ); NET_API_STATUS NetrDfsModifyPrefix ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] GUID * Uid, [in,string] WCHAR * Prefix ); NET_API_STATUS NetrDfsFixLocalVolume ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,string] WCHAR * VolumeName, [in] unsigned long EntryType, [in] unsigned long ServiceType, [in,string] WCHAR * StgId, [in] GUID * EntryUid, [in,string] WCHAR * EntryPrefix, [in] LPNET_DFS_ENTRY_ID_CONTAINER RelationInfo, [in] unsigned long CreateDisposition ); NET_API_STATUS NetrDfsManagerReportSiteInfo ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,out,unique] LPDFS_SITELIST_INFO *ppSiteInfo ); NET_API_STATUS NetrServerTransportDelEx ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in, switch_is(Level)] LPTRANSPORT_INFO Buffer ); NET_API_STATUS NetrServerAliasAdd ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in, switch_is(Level)] LPSERVER_ALIAS_INFO InfoStruct ); NET_API_STATUS NetrServerAliasEnum ( [in,string,unique] SRVSVC_HANDLE ServerName, [in,out] LPSERVER_ALIAS_ENUM_STRUCT InfoStruct, [in] DWORD PreferedMaximumLength, [out] LPDWORD TotalEntries, [in,out,unique] LPDWORD ResumeHandle ); NET_API_STATUS NetrServerAliasDel ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in, switch_is(Level)] LPSERVER_ALIAS_INFO InfoStruct ); NET_API_STATUS NetrShareDelEx ( [in,string,unique] SRVSVC_HANDLE ServerName, [in] DWORD Level, [in,switch_is(Level)] LPSHARE_INFO ShareInfo ); }