Coverage for /private/tmp/im/impacket/impacket/dcerpc/v5/srvs.py : 98%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
# SECUREAUTH LABS. Copyright 2018 SecureAuth Corporation. All rights reserved. # # This software is provided under under a slightly modified version # of the Apache Software License. See the accompanying LICENSE file # for more information. # # Author: Alberto Solino (@agsolino) # # Description: # [MS-SRVS] Interface implementation # # Best way to learn how to use these calls is to grab the protocol standard # so you understand what the call does, and then read the test case located # at https://github.com/SecureAuthCorp/impacket/tree/master/tests/SMB_RPC # # Some calls have helper functions, which makes it even easier to use. # They are located at the end of this file. # Helper functions start with "h"<name of the call>. # There are test cases for them too. # NDRUniFixedArray, NDRBOOLEAN, NDRUniConformantVaryingArray, PNDRUniConformantArray SECURITY_INFORMATION, WCHAR
else: return 'SRVS SessionError: unknown error code: 0x%x' % self.error_code
################################################################################ # CONSTANTS ################################################################################ # 2.2.1.1 SRVSVC_HANDLE
('Data', SRVSVC_HANDLE), )
# 2.2.1.2 SHARE_DEL_HANDLE ('Data','20s=""'), )
# 2.2.1.3 PSHARE_DEL_HANDLE ('Data', SHARE_DEL_HANDLE), )
# 2.2.2.2 MAX_PREFERRED_LENGTH
# 2.2.2.3 Session User Flags
# 2.2.2.4 Share Types
# AND with shi_type to extract the Share Type part
# 2.2.2.5 Client-Side Caching (CSC) States
# 2.2.2.6 Platform IDs
# 2.2.2.7 Software Type Flags
# 2.2.2.8 Name Types
# 2.2.2.9 Path Types
# 2.2.2.11 SHARE_INFO Parameter Error Codes
# 2.2.2.12 SERVER_INFO Parameter Error Codes
# 2.2.2.13 DFS Entry Flags
# 2.2.4.7 FILE_INFO_3 # fi3_permissions
# 2.2.4.29 SHARE_INFO_1005 # shi1005_flags
# 2.2.4.43 SERVER_INFO_103 # sv103_capabilities
# 2.2.4.96 SERVER_TRANSPORT_INFO_3 # svti3_flags
# 2.2.4.109 DFS_SITENAME_INFO # SiteFlags
# 3.1.4.42 NetrDfsFixLocalVolume (Opnum 51) # ServiceType
# CreateDisposition
################################################################################ # STRUCTURES ################################################################################ # 2.2.4.1 CONNECTION_INFO_0 ('coni0_id', DWORD), )
('Data', CONNECTION_INFO_0_ARRAY), )
# 2.2.4.2 CONNECTION_INFO_1 ('coni1_id', DWORD), ('coni1_type', DWORD), ('coni1_num_opens', DWORD), ('coni1_num_users', DWORD), ('coni1_time', DWORD), ('coni1_username', LPWSTR), ('coni1_netname', LPWSTR), )
('Data', CONNECTION_INFO_1_ARRAY), )
# 2.2.4.3 CONNECT_INFO_0_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPCONNECTION_INFO_0_ARRAY), )
('Data', CONNECT_INFO_0_CONTAINER), )
# 2.2.4.4 CONNECT_INFO_1_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPCONNECTION_INFO_1_ARRAY), )
('Data', CONNECT_INFO_1_CONTAINER), )
# 2.2.3.1 CONNECT_ENUM_UNION ('tag', DWORD), )
0: ('Level0', LPCONNECT_INFO_0_CONTAINER), 1: ('Level1', LPCONNECT_INFO_1_CONTAINER), }
# 2.2.4.5 CONNECT_ENUM_STRUCT ('Level', DWORD), ('ConnectInfo', CONNECT_ENUM_UNION), )
# 2.2.4.6 FILE_INFO_2 ('fi2_id', DWORD), )
('Data', FILE_INFO_2), )
('Data', FILE_INFO_2_ARRAY), )
# 2.2.4.7 FILE_INFO_3 ('fi3_id', DWORD), ('fi3_permissions', DWORD), ('fi3_num_locks', DWORD), ('fi3_path_name', LPWSTR), ('fi3_username', LPWSTR), )
('Data', FILE_INFO_3), )
('Data', FILE_INFO_3_ARRAY), )
# 2.2.4.8 FILE_INFO_2_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPFILE_INFO_2_ARRAY), )
('Data', FILE_INFO_2_CONTAINER), )
# 2.2.4.9 FILE_INFO_3_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPFILE_INFO_3_ARRAY), )
('Data', FILE_INFO_3_CONTAINER), )
# 2.2.3.2 FILE_ENUM_UNION ('tag', DWORD), )
2: ('Level2', LPFILE_INFO_2_CONTAINER), 3: ('Level3', LPFILE_INFO_3_CONTAINER), }
# 2.2.4.10 FILE_ENUM_STRUCT ('Level', DWORD), ('FileInfo', FILE_ENUM_UNION), )
# 2.2.4.11 SESSION_INFO_0 ('sesi0_cname', LPWSTR), )
('Data', SESSION_INFO_0), )
('Data', SESSION_INFO_0_ARRAY), )
# 2.2.4.12 SESSION_INFO_1 ('sesi1_cname', LPWSTR), ('sesi1_username', LPWSTR), ('sesi1_num_opens', DWORD), ('sesi1_time', DWORD), ('sesi1_idle_time', DWORD), ('sesi1_user_flags', DWORD), )
('Data', SESSION_INFO_1), )
('Data', SESSION_INFO_1_ARRAY), )
# 2.2.4.13 SESSION_INFO_2 ('sesi2_cname', LPWSTR), ('sesi2_username', LPWSTR), ('sesi2_num_opens', DWORD), ('sesi2_time', DWORD), ('sesi2_idle_time', DWORD), ('sesi2_user_flags', DWORD), ('sesi2_cltype_name', LPWSTR), )
('Data', SESSION_INFO_2), )
('Data', SESSION_INFO_2_ARRAY), )
# 2.2.4.14 SESSION_INFO_10 ('sesi10_cname', LPWSTR), ('sesi10_username', LPWSTR), ('sesi10_time', DWORD), ('sesi10_idle_time', DWORD), )
('Data', SESSION_INFO_10), )
('Data', SESSION_INFO_10_ARRAY), )
# 2.2.4.15 SESSION_INFO_502 ('sesi502_cname', LPWSTR), ('sesi502_username', LPWSTR), ('sesi502_num_opens', DWORD), ('sesi502_time', DWORD), ('sesi502_idle_time', DWORD), ('sesi502_user_flags', DWORD), ('sesi502_cltype_name', LPWSTR), ('sesi502_transport', LPWSTR), )
('Data', SESSION_INFO_502), )
('Data', SESSION_INFO_502_ARRAY), )
# 2.2.4.16 SESSION_INFO_0_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSESSION_INFO_0_ARRAY), )
('Data', SESSION_INFO_0_CONTAINER), )
# 2.2.4.17 SESSION_INFO_1_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSESSION_INFO_1_ARRAY), )
('Data', SESSION_INFO_1_CONTAINER), )
# 2.2.4.18 SESSION_INFO_2_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSESSION_INFO_2_ARRAY), )
('Data', SESSION_INFO_2_CONTAINER), )
# 2.2.4.19 SESSION_INFO_10_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSESSION_INFO_10_ARRAY), )
('Data', SESSION_INFO_10_CONTAINER), )
# 2.2.4.20 SESSION_INFO_502_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSESSION_INFO_502_ARRAY), )
('Data', SESSION_INFO_502_CONTAINER), )
# 2.2.3.4 SESSION_ENUM_UNION ('tag', DWORD), )
0: ('Level0', LPSESSION_INFO_0_CONTAINER), 1: ('Level1', LPSESSION_INFO_1_CONTAINER), 2: ('Level2', LPSESSION_INFO_2_CONTAINER), 10: ('Level10', LPSESSION_INFO_10_CONTAINER), 502: ('Level502', LPSESSION_INFO_502_CONTAINER), }
# 2.2.4.21 SESSION_ENUM_STRUCT ('Level', DWORD), ('SessionInfo', SESSION_ENUM_UNION), )
# 2.2.4.22 SHARE_INFO_0 ('shi0_netname', LPWSTR), )
('Data', SHARE_INFO_0), )
('Data', SHARE_INFO_0_ARRAY), )
# 2.2.4.23 SHARE_INFO_1 ('shi1_netname', LPWSTR), ('shi1_type', DWORD), ('shi1_remark', LPWSTR), )
('Data', SHARE_INFO_1), )
('Data', SHARE_INFO_1_ARRAY), )
# 2.2.4.24 SHARE_INFO_2 ('shi2_netname', LPWSTR), ('shi2_type', DWORD), ('shi2_remark', LPWSTR), ('shi2_permissions', DWORD), ('shi2_max_uses', DWORD), ('shi2_current_uses', DWORD), ('shi2_path', LPWSTR), ('shi2_passwd', LPWSTR), )
('Data', SHARE_INFO_2), )
('Data', SHARE_INFO_2_ARRAY), )
# 2.2.4.25 SHARE_INFO_501 ('shi501_netname', LPWSTR), ('shi501_type', DWORD), ('shi501_remark', LPWSTR), ('shi501_flags', DWORD), )
('Data', SHARE_INFO_501), )
('Data', SHARE_INFO_501_ARRAY), )
# 2.2.4.26 SHARE_INFO_502_I ('shi502_netname', LPWSTR), ('shi502_type', DWORD), ('shi502_remark', LPWSTR), ('shi502_permissions', DWORD), ('shi502_max_uses', DWORD), ('shi502_current_uses', DWORD), ('shi502_path', LPWSTR), ('shi502_passwd', LPWSTR), ('shi502_reserved', DWORD), ('shi502_security_descriptor', LPBYTE), )
('Data', SHARE_INFO_502), )
('Data', SHARE_INFO_502_ARRAY), )
# 2.2.4.27 SHARE_INFO_503_I ('shi503_netname', LPWSTR), ('shi503_type', DWORD), ('shi503_remark', LPWSTR), ('shi503_permissions', DWORD), ('shi503_max_uses', DWORD), ('shi503_current_uses', DWORD), ('shi503_path', LPWSTR), ('shi503_passwd', LPWSTR), ('shi503_servername', LPWSTR), ('shi503_reserved', DWORD), ('shi503_security_descriptor', LPBYTE), )
('Data', SHARE_INFO_503), )
('Data', SHARE_INFO_503_ARRAY), )
# 2.2.4.28 SHARE_INFO_1004 ('shi1004_remark', LPWSTR), )
('Data', SHARE_INFO_1004), )
('Data', SHARE_INFO_1004_ARRAY), )
# 2.2.4.29 SHARE_INFO_1005 ('shi1005_flags', DWORD), )
('Data', SHARE_INFO_1005), )
('Data', SHARE_INFO_1005_ARRAY), )
# 2.2.4.30 SHARE_INFO_1006 ('shi1006_max_uses', DWORD), )
('Data', SHARE_INFO_1006), )
('Data', SHARE_INFO_1006_ARRAY), )
# 2.2.4.31 SHARE_INFO_1501_I ('shi1501_reserved', DWORD), ('shi1501_security_descriptor', NDRUniConformantArray), )
('Data', SHARE_INFO_1501), )
('Data', SHARE_INFO_1501_ARRAY), )
# 2.2.4.32 SHARE_INFO_0_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSHARE_INFO_0_ARRAY), )
('Data', SHARE_INFO_0_CONTAINER), )
# 2.2.4.33 SHARE_INFO_1_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSHARE_INFO_1_ARRAY), )
('Data', SHARE_INFO_1_CONTAINER), )
# 2.2.4.34 SHARE_INFO_2_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSHARE_INFO_2_ARRAY), )
('Data', SHARE_INFO_2_CONTAINER), )
# 2.2.4.35 SHARE_INFO_501_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSHARE_INFO_501_ARRAY), )
('Data', SHARE_INFO_501_CONTAINER), )
# 2.2.4.36 SHARE_INFO_502_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSHARE_INFO_502_ARRAY), )
('Data', SHARE_INFO_502_CONTAINER), )
# 2.2.4.37 SHARE_INFO_503_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSHARE_INFO_503_ARRAY), )
('Data', SHARE_INFO_503_CONTAINER), )
# 2.2.3.5 SHARE_ENUM_UNION ('tag', DWORD), )
0: ('Level0', LPSHARE_INFO_0_CONTAINER), 1: ('Level1', LPSHARE_INFO_1_CONTAINER), 2: ('Level2', LPSHARE_INFO_2_CONTAINER), 501: ('Level501', LPSHARE_INFO_501_CONTAINER), 502: ('Level502', LPSHARE_INFO_502_CONTAINER), 503: ('Level503', LPSHARE_INFO_503_CONTAINER), }
# 2.2.4.38 SHARE_ENUM_STRUCT ('Level', DWORD), ('ShareInfo', SHARE_ENUM_UNION), )
# 2.2.4.39 STAT_SERVER_0 ('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', DWORD), )
('Data', STAT_SERVER_0), )
# 2.2.4.40 SERVER_INFO_100 ('sv100_platform_id', DWORD), ('sv100_name', LPWSTR), )
('Data', SERVER_INFO_100), )
# 2.2.4.41 SERVER_INFO_101 ('sv101_platform_id', DWORD), ('sv101_name', LPWSTR), ('sv101_version_major', DWORD), ('sv101_version_minor', DWORD), ('sv101_type', DWORD), ('sv101_comment', LPWSTR), )
('Data', SERVER_INFO_101), )
# 2.2.4.42 SERVER_INFO_102 ('sv102_platform_id', DWORD), ('sv102_name', LPWSTR), ('sv102_version_major', DWORD), ('sv102_version_minor', DWORD), ('sv102_type', DWORD), ('sv102_comment', LPWSTR), ('sv102_users', DWORD), ('sv102_disc', DWORD), ('sv102_hidden', DWORD), ('sv102_announce', DWORD), ('sv102_anndelta', DWORD), ('sv102_licenses', DWORD), ('sv102_userpath', LPWSTR), )
('Data', SERVER_INFO_102), )
# 2.2.4.43 SERVER_INFO_103 ('sv103_platform_id', DWORD), ('sv103_name', LPWSTR), ('sv103_version_major', DWORD), ('sv103_version_minor', DWORD), ('sv103_type', DWORD), ('sv103_comment', LPWSTR), ('sv103_users', DWORD), ('sv103_disc', DWORD), ('sv103_hidden', DWORD), ('sv103_announce', DWORD), ('sv103_anndelta', DWORD), ('sv103_licenses', DWORD), ('sv103_userpath', LPWSTR), ('sv103_capabilities', DWORD), )
('Data', SERVER_INFO_103), )
# 2.2.4.44 SERVER_INFO_502 ('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', DWORD), ('sv502_enablesoftcompat', DWORD), ('sv502_enableforcedlogoff', DWORD), ('sv502_timesource', DWORD), ('sv502_acceptdownlevelapis', DWORD), ('sv502_lmannounce', DWORD), )
('Data', SERVER_INFO_502), )
# 2.2.4.45 SERVER_INFO_503 ('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', DWORD), ('sv503_enablesoftcompat', DWORD), ('sv503_enableforcedlogoff', DWORD), ('sv503_timesource', DWORD), ('sv503_acceptdownlevelapis', DWORD), ('sv503_lmannounce', DWORD), ('sv503_domain', LPWSTR), ('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', DWORD), ('sv503_enableoplocks', DWORD), ('sv503_enableoplockforceclose', DWORD), ('sv503_enablefcbopens', DWORD), ('sv503_enableraw', DWORD), ('sv503_enablesharednetdrives', DWORD), ('sv503_minfreeconnections', DWORD), ('sv503_maxfreeconnections', DWORD), )
('Data', SERVER_INFO_503), )
# 2.2.4.46 SERVER_INFO_599 ('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', DWORD), ('sv599_enablesoftcompat', DWORD), ('sv599_enableforcedlogoff', DWORD), ('sv599_timesource', DWORD), ('sv599_acceptdownlevelapis', DWORD), ('sv599_lmannounce', DWORD), ('sv599_domain', LPWSTR), ('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', DWORD), ('sv599_enableoplocks', DWORD), ('sv599_enableoplockforceclose', DWORD), ('sv599_enablefcbopens', DWORD), ('sv599_enableraw', DWORD), ('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', DWORD), )
('Data', SERVER_INFO_599), )
# 2.2.4.47 SERVER_INFO_1005 ('sv1005_comment', LPWSTR), )
('Data', SERVER_INFO_1005), )
# 2.2.4.48 SERVER_INFO_1107 ('sv1107_users', DWORD), )
('Data', SERVER_INFO_1107), )
# 2.2.4.49 SERVER_INFO_1010 ('sv1010_disc', DWORD), )
('Data', SERVER_INFO_1010), )
# 2.2.4.50 SERVER_INFO_1016 ('sv1016_hidden', DWORD), )
('Data', SERVER_INFO_1016), )
# 2.2.4.51 SERVER_INFO_1017 ('sv1017_announce', DWORD), )
('Data', SERVER_INFO_1017), )
# 2.2.4.52 SERVER_INFO_1018 ('sv1018_anndelta', DWORD), )
('Data', SERVER_INFO_1018), )
# 2.2.4.53 SERVER_INFO_1501 ('sv1501_sessopens', DWORD), )
('Data', SERVER_INFO_1501), )
# 2.2.4.54 SERVER_INFO_1502 ('sv1502_sessvcs', DWORD), )
('Data', SERVER_INFO_1502), )
# 2.2.4.55 SERVER_INFO_1503 ('sv1503_opensearch', DWORD), )
('Data', SERVER_INFO_1503), )
# 2.2.4.56 SERVER_INFO_1506 ('sv1506_maxworkitems', DWORD), )
('Data', SERVER_INFO_1506), )
# 2.2.4.57 SERVER_INFO_1510 ('sv1510_sessusers', DWORD), )
('Data', SERVER_INFO_1510), )
# 2.2.4.58 SERVER_INFO_1511 ('sv1511_sessconns', DWORD), )
('Data', SERVER_INFO_1511), )
# 2.2.4.59 SERVER_INFO_1512 ('sv1512_maxnonpagedmemoryusage', DWORD), )
('Data', SERVER_INFO_1512), )
# 2.2.4.60 SERVER_INFO_1513 ('sv1513_maxpagedmemoryusage', DWORD), )
('Data', SERVER_INFO_1513), )
# 2.2.4.61 SERVER_INFO_1514 ('sv1514_enablesoftcompat', DWORD), )
('Data', SERVER_INFO_1514), )
# 2.2.4.62 SERVER_INFO_1515 ('sv1515_enableforcedlogoff', DWORD), )
('Data', SERVER_INFO_1515), )
# 2.2.4.63 SERVER_INFO_1516 ('sv1516_timesource', DWORD), )
('Data', SERVER_INFO_1516), )
# 2.2.4.64 SERVER_INFO_1518 ('sv1518_lmannounce', DWORD), )
('Data', SERVER_INFO_1518), )
# 2.2.4.65 SERVER_INFO_1523 ('sv1523_maxkeepsearch', DWORD), )
('Data', SERVER_INFO_1523), )
# 2.2.4.66 SERVER_INFO_1528 ('sv1528_scavtimeout', DWORD), )
('Data', SERVER_INFO_1528), )
# 2.2.4.67 SERVER_INFO_1529 ('sv1529_minrcvqueue', DWORD), )
('Data', SERVER_INFO_1529), )
# 2.2.4.68 SERVER_INFO_1530 ('sv1530_minfreeworkitems', DWORD), )
('Data', SERVER_INFO_1530), )
# 2.2.4.69 SERVER_INFO_1533 ('sv1533_maxmpxct', DWORD), )
('Data', SERVER_INFO_1533), )
# 2.2.4.70 SERVER_INFO_1534 ('sv1534_oplockbreakwait', DWORD), )
('Data', SERVER_INFO_1534), )
# 2.2.4.71 SERVER_INFO_1535 ('sv1535_oplockbreakresponsewait', DWORD), )
('Data', SERVER_INFO_1535), )
# 2.2.4.72 SERVER_INFO_1536 ('sv1536_enableoplocks', DWORD), )
('Data', SERVER_INFO_1536), )
# 2.2.4.73 SERVER_INFO_1538 ('sv1538_enablefcbopens', DWORD), )
('Data', SERVER_INFO_1538), )
# 2.2.4.74 SERVER_INFO_1539 ('sv1539_enableraw', DWORD), )
('Data', SERVER_INFO_1539), )
# 2.2.4.75 SERVER_INFO_1540 ('sv1540_enablesharednetdrives', DWORD), )
('Data', SERVER_INFO_1540), )
# 2.2.4.76 SERVER_INFO_1541 ('sv1541_minfreeconnections', DWORD), )
('Data', SERVER_INFO_1541), )
# 2.2.4.77 SERVER_INFO_1542 ('sv1542_maxfreeconnections', DWORD), )
('Data', SERVER_INFO_1542), )
# 2.2.4.78 SERVER_INFO_1543 ('sv1543_initsesstable', DWORD), )
('Data', SERVER_INFO_1543), )
# 2.2.4.79 SERVER_INFO_1544 ('sv1544_initconntable', DWORD), )
('Data', SERVER_INFO_1544), )
# 2.2.4.80 SERVER_INFO_1545 ('sv1545_initfiletable', DWORD), )
('Data', SERVER_INFO_1545), )
# 2.2.4.81 SERVER_INFO_1546 ('sv1546_initsearchtable', DWORD), )
('Data', SERVER_INFO_1546), )
# 2.2.4.82 SERVER_INFO_1547 ('sv1547_alertschedule', DWORD), )
('Data', SERVER_INFO_1547), )
# 2.2.4.83 SERVER_INFO_1548 ('sv1548_errorthreshold', DWORD), )
('Data', SERVER_INFO_1548), )
# 2.2.4.84 SERVER_INFO_1549 ('sv1549_networkerrorthreshold', DWORD), )
('Data', SERVER_INFO_1549), )
# 2.2.4.85 SERVER_INFO_1550 ('sv1550_diskspacethreshold', DWORD), )
('Data', SERVER_INFO_1550), )
# 2.2.4.86 SERVER_INFO_1552 ('sv1552_maxlinkdelay', DWORD), )
('Data', SERVER_INFO_1552), )
# 2.2.4.87 SERVER_INFO_1553 ('sv1553_minlinkthroughput', DWORD), )
('Data', SERVER_INFO_1553), )
# 2.2.4.88 SERVER_INFO_1554 ('sv1554_linkinfovalidtime', DWORD), )
('Data', SERVER_INFO_1554), )
# 2.2.4.89 SERVER_INFO_1555 ('sv1555_scavqosinfoupdatetime', DWORD), )
('Data', SERVER_INFO_1555), )
# 2.2.4.90 SERVER_INFO_1556 ('sv1556_maxworkitemidletime', DWORD), )
('Data', SERVER_INFO_1556), )
# 2.2.4.91 DISK_INFO ('Offset','<L=0'), ('ActualCount','<L=len(Data)//2'), ) ('Offset','<Q=0'), ('ActualCount','<Q=len(Data)//2'), ) ('Data',':'), )
msg = self.__class__.__name__ # Here just print the data
if key == 'Data': try: self.fields[key] = value.encode('utf-16le') except UnicodeDecodeError: import sys self.fields[key] = value.decode(sys.getfilesystemencoding()).encode('utf-16le') self.fields['ActualCount'] = None self.data = None # force recompute else: return NDR.__setitem__(self, key, value)
else:
('Disk', WCHAR_ARRAY), )
('Data', DISK_INFO), )
('Data', DISK_INFO_ARRAY), )
# 2.2.4.92 DISK_ENUM_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPDISK_INFO_ARRAY), )
('Data', DISK_ENUM_CONTAINER), )
# 2.2.4.93 SERVER_TRANSPORT_INFO_0 ('svti0_numberofvcs', DWORD), ('svti0_transportname', LPWSTR), ('svti0_transportaddress', PNDRUniConformantArray), ('svti0_transportaddresslength', DWORD), ('svti0_networkaddress', LPWSTR), )
('Data', SERVER_TRANSPORT_INFO_0), )
('Data', SERVER_TRANSPORT_INFO_0_ARRAY), )
# 2.2.4.94 SERVER_TRANSPORT_INFO_1 ('svti1_numberofvcs', DWORD), ('svti1_transportname', LPWSTR), ('svti1_transportaddress', PNDRUniConformantArray), ('svti1_transportaddresslength', DWORD), ('svti1_networkaddress', LPWSTR), ('svti1_domain', LPWSTR), )
('Data', SERVER_TRANSPORT_INFO_1), )
('Data', SERVER_TRANSPORT_INFO_1_ARRAY), )
# 2.2.4.95 SERVER_TRANSPORT_INFO_2 ('svti2_numberofvcs', DWORD), ('svti2_transportname', LPWSTR), ('svti2_transportaddress', PNDRUniConformantArray), ('svti2_transportaddresslength', DWORD), ('svti2_networkaddress', LPWSTR), ('svti2_domain', LPWSTR), ('svti2_flags', DWORD), )
('Data', SERVER_TRANSPORT_INFO_2), )
('Data', SERVER_TRANSPORT_INFO_2_ARRAY), )
# 2.2.4.96 SERVER_TRANSPORT_INFO_3 return 256
('svti3_numberofvcs', DWORD), ('svti3_transportname', LPWSTR), ('svti3_transportaddress', PNDRUniConformantArray), ('svti3_transportaddresslength', DWORD), ('svti3_networkaddress', LPWSTR), ('svti3_domain', LPWSTR), ('svti3_flags', DWORD), ('svti3_passwordlength', DWORD), ('svti3_password', PASSWORD_ARRAY), )
('Data', SERVER_TRANSPORT_INFO_3), )
('Data', SERVER_TRANSPORT_INFO_3_ARRAY), )
# 2.2.4.97 SERVER_XPORT_INFO_0_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSERVER_TRANSPORT_INFO_0_ARRAY), )
('Data', SERVER_XPORT_INFO_0_CONTAINER), )
# 2.2.4.98 SERVER_XPORT_INFO_1_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSERVER_TRANSPORT_INFO_1_ARRAY), )
('Data', SERVER_XPORT_INFO_1_CONTAINER), )
# 2.2.4.99 SERVER_XPORT_INFO_2_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSERVER_TRANSPORT_INFO_2_ARRAY), )
('Data', SERVER_XPORT_INFO_2_CONTAINER), )
# 2.2.4.100 SERVER_XPORT_INFO_3_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSERVER_TRANSPORT_INFO_3_ARRAY), )
('Data', SERVER_XPORT_INFO_3_CONTAINER), )
# 2.2.3.8 SERVER_XPORT_ENUM_UNION ('tag', DWORD), )
0: ('Level0', LPSERVER_XPORT_INFO_0_CONTAINER), 1: ('Level1', LPSERVER_XPORT_INFO_1_CONTAINER), 2: ('Level2', LPSERVER_XPORT_INFO_2_CONTAINER), 3: ('Level3', LPSERVER_XPORT_INFO_3_CONTAINER), }
# 2.2.4.101 SERVER_XPORT_ENUM_STRUCT ('Level', DWORD), ('XportInfo', SERVER_XPORT_ENUM_UNION), )
# 2.2.4.102 SERVER_ALIAS_INFO_0 ('srvai0_alias', LMSTR), ('srvai0_target', LMSTR), ('srvai0_default', NDRBOOLEAN), ('srvai0_reserved', ULONG), )
('Data', SERVER_ALIAS_INFO_0), )
('Data', SERVER_ALIAS_INFO_0_ARRAY), )
# 2.2.4.103 SERVER_ALIAS_INFO_0_CONTAINER ('EntriesRead', DWORD), ('Buffer', LPSERVER_ALIAS_INFO_0_ARRAY), )
('Data', SERVER_ALIAS_INFO_0_CONTAINER), )
# 2.2.4.104 SERVER_ALIAS_ENUM_STRUCT ('tag', DWORD), )
0: ('Level0', LPSERVER_ALIAS_INFO_0_CONTAINER), }
('Level', DWORD), ('ServerAliasInfo', SERVER_ALIAS_ENUM_UNION), )
# 2.2.4.105 TIME_OF_DAY_INFO ('tod_elapsedt', DWORD), ('tod_msecs', DWORD), ('tod_hours', DWORD), ('tod_mins', DWORD), ('tod_secs', DWORD), ('tod_hunds', DWORD), ('tod_timezone', DWORD), ('tod_tinterval', DWORD), ('tod_day', DWORD), ('tod_month', DWORD), ('tod_year', DWORD), ('tod_weekday', DWORD), )
('Data', TIME_OF_DAY_INFO), )
# 2.2.4.106 ADT_SECURITY_DESCRIPTOR ('Length', DWORD), ('Buffer', PNDRUniConformantArray), )
('Data', ADT_SECURITY_DESCRIPTOR), )
# 2.2.4.107 NET_DFS_ENTRY_ID ('Uid', GUID), ('Prefix', LPWSTR), )
('Data', NET_DFS_ENTRY_ID_ARRAY), )
# 2.2.4.108 NET_DFS_ENTRY_ID_CONTAINER ('Count', DWORD), ('Buffer', LPNET_DFS_ENTRY_ID_ARRAY), )
# 2.2.4.109 DFS_SITENAME_INFO ('SiteFlags', DWORD), ('SiteName', LPWSTR), )
# 2.2.4.110 DFS_SITELIST_INFO
('cSites', DWORD), ('Site', DFS_SITENAME_INFO_ARRAY), )
('Data', DFS_SITELIST_INFO), )
# 2.2.3 Unions # 2.2.3.3 FILE_INFO ('tag', DWORD), )
2: ('FileInfo2', LPFILE_INFO_2), 3: ('FileInfo3', LPFILE_INFO_3), }
# 2.2.3.6 SHARE_INFO ('tag', DWORD), )
0: ('ShareInfo0', LPSHARE_INFO_0), 1: ('ShareInfo1', LPSHARE_INFO_1), 2: ('ShareInfo2', LPSHARE_INFO_2), 502: ('ShareInfo502', LPSHARE_INFO_502), 1004: ('ShareInfo1004', LPSHARE_INFO_1004), 1006: ('ShareInfo1006', LPSHARE_INFO_1006), 1501: ('ShareInfo1501', LPSHARE_INFO_1501), 1005: ('ShareInfo1005', LPSHARE_INFO_1005), 501: ('ShareInfo501', LPSHARE_INFO_501), 503: ('ShareInfo503', LPSHARE_INFO_503), }
# 2.2.3.7 SERVER_INFO ('tag', DWORD), )
100: ('ServerInfo100', LPSERVER_INFO_100), 101: ('ServerInfo101', LPSERVER_INFO_101), 102: ('ServerInfo102', LPSERVER_INFO_102), 103: ('ServerInfo103', LPSERVER_INFO_103), 502: ('ServerInfo502', LPSERVER_INFO_502), 503: ('ServerInfo503', LPSERVER_INFO_503), 599: ('ServerInfo599', LPSERVER_INFO_599), 1005: ('ServerInfo1005', LPSERVER_INFO_1005), 1107: ('ServerInfo1107', LPSERVER_INFO_1107), 1010: ('ServerInfo1010', LPSERVER_INFO_1010), 1016: ('ServerInfo1016', LPSERVER_INFO_1016), 1017: ('ServerInfo1017', LPSERVER_INFO_1017), 1018: ('ServerInfo1018', LPSERVER_INFO_1018), 1501: ('ServerInfo1501', LPSERVER_INFO_1501), 1502: ('ServerInfo1502', LPSERVER_INFO_1502), 1503: ('ServerInfo1503', LPSERVER_INFO_1503), 1506: ('ServerInfo1506', LPSERVER_INFO_1506), 1510: ('ServerInfo1510', LPSERVER_INFO_1510), 1511: ('ServerInfo1511', LPSERVER_INFO_1511), 1512: ('ServerInfo1512', LPSERVER_INFO_1512), 1513: ('ServerInfo1513', LPSERVER_INFO_1513), 1514: ('ServerInfo1514', LPSERVER_INFO_1514), 1515: ('ServerInfo1515', LPSERVER_INFO_1515), 1516: ('ServerInfo1516', LPSERVER_INFO_1516), 1518: ('ServerInfo1518', LPSERVER_INFO_1518), 1523: ('ServerInfo1523', LPSERVER_INFO_1523), 1528: ('ServerInfo1528', LPSERVER_INFO_1528), 1529: ('ServerInfo1529', LPSERVER_INFO_1529), 1530: ('ServerInfo1530', LPSERVER_INFO_1530), 1533: ('ServerInfo1533', LPSERVER_INFO_1533), 1534: ('ServerInfo1534', LPSERVER_INFO_1534), 1535: ('ServerInfo1535', LPSERVER_INFO_1535), 1536: ('ServerInfo1536', LPSERVER_INFO_1536), 1538: ('ServerInfo1538', LPSERVER_INFO_1538), 1539: ('ServerInfo1539', LPSERVER_INFO_1539), 1540: ('ServerInfo1540', LPSERVER_INFO_1540), 1541: ('ServerInfo1541', LPSERVER_INFO_1541), 1542: ('ServerInfo1542', LPSERVER_INFO_1542), 1543: ('ServerInfo1543', LPSERVER_INFO_1543), 1544: ('ServerInfo1544', LPSERVER_INFO_1544), 1545: ('ServerInfo1545', LPSERVER_INFO_1545), 1546: ('ServerInfo1546', LPSERVER_INFO_1546), 1547: ('ServerInfo1547', LPSERVER_INFO_1547), 1548: ('ServerInfo1548', LPSERVER_INFO_1548), 1549: ('ServerInfo1549', LPSERVER_INFO_1549), 1550: ('ServerInfo1550', LPSERVER_INFO_1550), 1552: ('ServerInfo1552', LPSERVER_INFO_1552), 1553: ('ServerInfo1553', LPSERVER_INFO_1553), 1554: ('ServerInfo1554', LPSERVER_INFO_1554), 1555: ('ServerInfo1555', LPSERVER_INFO_1555), 1556: ('ServerInfo1556', LPSERVER_INFO_1556), }
# 2.2.3.9 TRANSPORT_INFO ('tag', DWORD), )
0: ('Transport0', SERVER_TRANSPORT_INFO_0), 1: ('Transport1', SERVER_TRANSPORT_INFO_1), 2: ('Transport2', SERVER_TRANSPORT_INFO_2), 3: ('Transport3', SERVER_TRANSPORT_INFO_3), }
# 2.2.3.10 SERVER_ALIAS_INFO ('tag', DWORD), )
0: ('ServerAliasInfo0', LPSERVER_ALIAS_INFO_0), }
################################################################################ # RPC CALLS ################################################################################ # 3.1.4.1 NetrConnectionEnum (Opnum 8) ('ServerName', PSRVSVC_HANDLE), ('Qualifier', LPWSTR), ('InfoStruct', CONNECT_ENUM_STRUCT), ('PreferedMaximumLength', DWORD), ('ResumeHandle', LPLONG), )
('InfoStruct',CONNECT_ENUM_STRUCT), ('TotalEntries',DWORD), ('ResumeHandle',LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.2 NetrFileEnum (Opnum 9) ('ServerName', PSRVSVC_HANDLE), ('BasePath', LPWSTR), ('UserName', LPWSTR), ('InfoStruct', FILE_ENUM_STRUCT), ('PreferedMaximumLength', DWORD), ('ResumeHandle', LPLONG), )
('InfoStruct',FILE_ENUM_STRUCT), ('TotalEntries',DWORD), ('ResumeHandle',LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.3 NetrFileGetInfo (Opnum 10) ('ServerName', PSRVSVC_HANDLE), ('FileId', DWORD), ('Level', DWORD), )
('InfoStruct',FILE_INFO), ('ErrorCode',ULONG), )
# 3.1.4.4 NetrFileClose (Opnum 11) ('ServerName', PSRVSVC_HANDLE), ('FileId', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.5 NetrSessionEnum (Opnum 12) ('ServerName', PSRVSVC_HANDLE), ('ClientName', LPWSTR), ('UserName', LPWSTR), ('InfoStruct', SESSION_ENUM_STRUCT), ('PreferedMaximumLength', DWORD), ('ResumeHandle', LPLONG), )
('InfoStruct',SESSION_ENUM_STRUCT), ('TotalEntries',DWORD), ('ResumeHandle',LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.6 NetrSessionDel (Opnum 13) ('ServerName', PSRVSVC_HANDLE), ('ClientName', LPWSTR), ('UserName', LPWSTR), )
('ErrorCode',ULONG), )
# 3.1.4.7 NetrShareAdd (Opnum 14) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('InfoStruct', SHARE_INFO), ('ParmErr', LPLONG), )
('ParmErr', LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.8 NetrShareEnum (Opnum 15) ('ServerName', PSRVSVC_HANDLE), ('InfoStruct', SHARE_ENUM_STRUCT), ('PreferedMaximumLength', DWORD), ('ResumeHandle', LPLONG), )
('InfoStruct', SHARE_ENUM_STRUCT), ('TotalEntries',DWORD), ('ResumeHandle',LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.9 NetrShareEnumSticky (Opnum 36) ('ServerName', PSRVSVC_HANDLE), ('InfoStruct', SHARE_ENUM_STRUCT), ('PreferedMaximumLength', DWORD), ('ResumeHandle', LPLONG), )
('InfoStruct', SHARE_ENUM_STRUCT), ('TotalEntries',DWORD), ('ResumeHandle',LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.10 NetrShareGetInfo (Opnum 16) ('ServerName', PSRVSVC_HANDLE), ('NetName', WSTR), ('Level', DWORD), )
('InfoStruct', SHARE_INFO), ('ErrorCode',ULONG), )
# 3.1.4.11 NetrShareSetInfo (Opnum 17) ('ServerName', PSRVSVC_HANDLE), ('NetName', WSTR), ('Level', DWORD), ('ShareInfo', SHARE_INFO), ('ParmErr', LPLONG), )
('ParmErr', LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.12 NetrShareDel (Opnum 18) ('ServerName', PSRVSVC_HANDLE), ('NetName', WSTR), ('Reserved', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.13 NetrShareDelSticky (Opnum 19) ('ServerName', PSRVSVC_HANDLE), ('NetName', WSTR), ('Reserved', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.14 NetrShareDelStart (Opnum 37) ('ServerName', PSRVSVC_HANDLE), ('NetName', WSTR), ('Reserved', DWORD), )
('ContextHandle',SHARE_DEL_HANDLE), ('ErrorCode',ULONG), )
# 3.1.4.15 NetrShareDelCommit (Opnum 38) ('ContextHandle',SHARE_DEL_HANDLE), )
('ErrorCode',ULONG), )
# 3.1.4.16 NetrShareCheck (Opnum 20) ('ServerName', PSRVSVC_HANDLE), ('Device', WSTR), )
('Type',DWORD), ('ErrorCode',ULONG), )
# 3.1.4.17 NetrServerGetInfo (Opnum 21) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), )
('InfoStruct', SERVER_INFO), ('ErrorCode',ULONG), )
# 3.1.4.18 NetrServerSetInfo (Opnum 22) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('InfoStruct', SERVER_INFO), )
('ParmErr', LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.19 NetrServerDiskEnum (Opnum 23) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('DiskInfoStruct', DISK_ENUM_CONTAINER), ('PreferedMaximumLength', DWORD), ('ResumeHandle', LPLONG), )
('DiskInfoStruct', DISK_ENUM_CONTAINER), ('TotalEntries', DWORD), ('ResumeHandle', LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.20 NetrServerStatisticsGet (Opnum 24) ('ServerName', PSRVSVC_HANDLE), ('Service', LPWSTR), ('Level', DWORD), ('Options', DWORD), )
('InfoStruct', LPSTAT_SERVER_0), ('ErrorCode',ULONG), )
# 3.1.4.21 NetrRemoteTOD (Opnum 28) ('ServerName', PSRVSVC_HANDLE), )
('BufferPtr', LPTIME_OF_DAY_INFO), ('ErrorCode',ULONG), )
# 3.1.4.22 NetrServerTransportAdd (Opnum 25) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('Buffer', SERVER_TRANSPORT_INFO_0), )
('ErrorCode',ULONG), )
# 3.1.4.23 NetrServerTransportAddEx (Opnum 41) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('Buffer', TRANSPORT_INFO), )
('ErrorCode',ULONG), )
# 3.1.4.24 NetrServerTransportEnum (Opnum 26) ('ServerName', PSRVSVC_HANDLE), ('InfoStruct', SERVER_XPORT_ENUM_STRUCT), ('PreferedMaximumLength', DWORD), ('ResumeHandle', LPLONG), )
('InfoStruct', SERVER_XPORT_ENUM_STRUCT), ('TotalEntries', DWORD), ('ResumeHandle', LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.25 NetrServerTransportDel (Opnum 27) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('Buffer', SERVER_TRANSPORT_INFO_0), )
('ErrorCode',ULONG), )
# 3.1.4.26 NetrServerTransportDelEx (Opnum 53) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('Buffer', TRANSPORT_INFO), )
('ErrorCode',ULONG), )
# 3.1.4.27 NetrpGetFileSecurity (Opnum 39) ('ServerName', PSRVSVC_HANDLE), ('ShareName', LPWSTR), ('lpFileName', WSTR), ('RequestedInformation', SECURITY_INFORMATION), )
('SecurityDescriptor', PADT_SECURITY_DESCRIPTOR), ('ErrorCode',ULONG), )
# 3.1.4.28 NetrpSetFileSecurity (Opnum 40) ('ServerName', PSRVSVC_HANDLE), ('ShareName', LPWSTR), ('lpFileName', WSTR), ('SecurityInformation', SECURITY_INFORMATION), ('SecurityDescriptor', ADT_SECURITY_DESCRIPTOR), )
('ErrorCode',ULONG), )
# 3.1.4.29 NetprPathType (Opnum 30) ('ServerName', PSRVSVC_HANDLE), ('PathName', WSTR), ('Flags', DWORD), )
('PathType', DWORD), ('ErrorCode',ULONG), )
# 3.1.4.30 NetprPathCanonicalize (Opnum 31) ('ServerName', PSRVSVC_HANDLE), ('PathName', WSTR), ('OutbufLen', DWORD), ('Prefix', WSTR), ('PathType', DWORD), ('Flags', DWORD), )
('Outbuf', NDRUniConformantArray), ('PathType', DWORD), ('ErrorCode',ULONG), )
# 3.1.4.31 NetprPathCompare (Opnum 32) ('ServerName', PSRVSVC_HANDLE), ('PathName1', WSTR), ('PathName2', WSTR), ('PathType', DWORD), ('Flags', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.32 NetprNameValidate (Opnum 33) ('ServerName', PSRVSVC_HANDLE), ('Name', WSTR), ('NameType', DWORD), ('Flags', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.33 NetprNameCanonicalize (Opnum 34) ('ServerName', PSRVSVC_HANDLE), ('Name', WSTR), ('OutbufLen', DWORD), ('NameType', DWORD), ('Flags', DWORD), )
('Outbuf', NDRUniConformantArray), ('NameType', DWORD), ('ErrorCode',ULONG), )
# 3.1.4.34 NetprNameCompare (Opnum 35) ('ServerName', PSRVSVC_HANDLE), ('Name1', WSTR), ('Name2', WSTR), ('NameType', DWORD), ('Flags', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.35 NetrDfsGetVersion (Opnum 43) ('ServerName', PSRVSVC_HANDLE), )
('Version', DWORD), ('ErrorCode',ULONG), )
# 3.1.4.36 NetrDfsCreateLocalPartition (Opnum 44) ('ServerName', PSRVSVC_HANDLE), ('ShareName', WSTR), ('EntryUid', GUID), ('EntryPrefix', WSTR), ('ShortName', WSTR), ('RelationInfo', NET_DFS_ENTRY_ID_CONTAINER), ('Force', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.37 NetrDfsDeleteLocalPartition (Opnum 45) ('ServerName', PSRVSVC_HANDLE), ('Uid', GUID), ('Prefix', WSTR), )
('ErrorCode',ULONG), )
# 3.1.4.38 NetrDfsSetLocalVolumeState (Opnum 46) ('ServerName', PSRVSVC_HANDLE), ('Uid', GUID), ('Prefix', WSTR), ('State', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.39 NetrDfsCreateExitPoint (Opnum 48) ('ServerName', PSRVSVC_HANDLE), ('Uid', GUID), ('Prefix', WSTR), ('Type', DWORD), ('ShortPrefixLen', DWORD), )
('ShortPrefix',WCHAR_ARRAY), ('ErrorCode',ULONG), )
# 3.1.4.40 NetrDfsModifyPrefix (Opnum 50) ('ServerName', PSRVSVC_HANDLE), ('Uid', GUID), ('Prefix', WSTR), )
('ErrorCode',ULONG), )
# 3.1.4.41 NetrDfsDeleteExitPoint (Opnum 49) ('ServerName', PSRVSVC_HANDLE), ('Uid', GUID), ('Prefix', WSTR), ('Type', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.42 NetrDfsFixLocalVolume (Opnum 51) ('ServerName', PSRVSVC_HANDLE), ('VolumeName', WSTR), ('EntryType', DWORD), ('ServiceType', DWORD), ('StgId', WSTR), ('EntryUid', GUID), ('EntryPrefix', WSTR), ('RelationInfo', NET_DFS_ENTRY_ID_CONTAINER), ('CreateDisposition', DWORD), )
('ErrorCode',ULONG), )
# 3.1.4.43 NetrDfsManagerReportSiteInfo (Opnum 52) ('ServerName', PSRVSVC_HANDLE), ('ppSiteInfo', LPDFS_SITELIST_INFO), )
('ppSiteInfo', LPDFS_SITELIST_INFO), ('ErrorCode',ULONG), )
# 3.1.4.44 NetrServerAliasAdd (Opnum 54) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('InfoStruct', SERVER_ALIAS_INFO), )
('ErrorCode',ULONG), )
# 3.1.4.45 NetrServerAliasEnum (Opnum 55) ('ServerName', PSRVSVC_HANDLE), ('InfoStruct', SERVER_ALIAS_ENUM_STRUCT), ('PreferedMaximumLength', DWORD), ('ResumeHandle', LPLONG), )
('InfoStruct',SERVER_ALIAS_ENUM_STRUCT), ('TotalEntries',DWORD), ('ResumeHandle',LPLONG), ('ErrorCode',ULONG), )
# 3.1.4.46 NetrServerAliasDel (Opnum 56) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('InfoStruct', SERVER_ALIAS_INFO), )
('ErrorCode',ULONG), )
# 3.1.4.47 NetrShareDelEx (Opnum 57) ('ServerName', PSRVSVC_HANDLE), ('Level', DWORD), ('ShareInfo', SHARE_INFO), )
('ErrorCode',ULONG), )
################################################################################ # OPNUMs and their corresponding structures ################################################################################ 8 : (NetrConnectionEnum, NetrConnectionEnumResponse), 9 : (NetrFileEnum, NetrFileEnumResponse), 10 : (NetrFileGetInfo, NetrFileGetInfoResponse), 11 : (NetrFileClose, NetrFileCloseResponse), 12 : (NetrSessionEnum, NetrSessionEnumResponse), 13 : (NetrSessionDel, NetrSessionDelResponse), 14 : (NetrShareAdd, NetrShareAddResponse), 15 : (NetrShareEnum, NetrShareEnumResponse), 16 : (NetrShareGetInfo, NetrShareGetInfoResponse), 17 : (NetrShareSetInfo, NetrShareSetInfoResponse), 18 : (NetrShareDel, NetrShareDelResponse), 19 : (NetrShareDelSticky, NetrShareDelStickyResponse), 20 : (NetrShareCheck, NetrShareCheckResponse), 21 : (NetrServerGetInfo, NetrServerGetInfoResponse), 22 : (NetrServerSetInfo, NetrServerSetInfoResponse), 23 : (NetrServerDiskEnum, NetrServerDiskEnumResponse), 24 : (NetrServerStatisticsGet, NetrServerStatisticsGetResponse), 25 : (NetrServerTransportAdd, NetrServerTransportAddResponse), 26 : (NetrServerTransportEnum, NetrServerTransportEnumResponse), 27 : (NetrServerTransportDel, NetrServerTransportDelResponse), 28 : (NetrRemoteTOD, NetrRemoteTODResponse), 30 : (NetprPathType, NetprPathTypeResponse), 31 : (NetprPathCanonicalize, NetprPathCanonicalizeResponse), 32 : (NetprPathCompare, NetprPathCompareResponse), 33 : (NetprNameValidate, NetprNameValidateResponse), 34 : (NetprNameCanonicalize, NetprNameCanonicalizeResponse), 35 : (NetprNameCompare, NetprNameCompareResponse), 36 : (NetrShareEnumSticky, NetrShareEnumStickyResponse), 37 : (NetrShareDelStart, NetrShareDelStartResponse), 38 : (NetrShareDelCommit, NetrShareDelCommitResponse), 39 : (NetrpGetFileSecurity, NetrpGetFileSecurityResponse), 40 : (NetrpSetFileSecurity, NetrpSetFileSecurityResponse), 41 : (NetrServerTransportAddEx, NetrServerTransportAddExResponse), 43 : (NetrDfsGetVersion, NetrDfsGetVersionResponse), 44 : (NetrDfsCreateLocalPartition, NetrDfsCreateLocalPartitionResponse), 45 : (NetrDfsDeleteLocalPartition, NetrDfsDeleteLocalPartitionResponse), 46 : (NetrDfsSetLocalVolumeState, NetrDfsSetLocalVolumeStateResponse), 48 : (NetrDfsCreateExitPoint, NetrDfsCreateExitPointResponse), 49 : (NetrDfsDeleteExitPoint, NetrDfsDeleteExitPointResponse), 50 : (NetrDfsModifyPrefix, NetrDfsModifyPrefixResponse), 51 : (NetrDfsFixLocalVolume, NetrDfsFixLocalVolumeResponse), 52 : (NetrDfsManagerReportSiteInfo, NetrDfsManagerReportSiteInfoResponse), 53 : (NetrServerTransportDelEx, NetrServerTransportDelExResponse), 54 : (NetrServerAliasAdd, NetrServerAliasAddResponse), 55 : (NetrServerAliasEnum, NetrServerAliasEnumResponse), 56 : (NetrServerAliasDel, NetrServerAliasDelResponse), 57 : (NetrShareDelEx, NetrShareDelExResponse), }
################################################################################ # HELPER FUNCTIONS ################################################################################
request = NetrShareEnumSticky() request['ServerName'] = NULL request['PreferedMaximumLength'] = preferedMaximumLength request['ResumeHandle'] = resumeHandle request['InfoStruct']['Level'] = level request['InfoStruct']['ShareInfo']['tag'] = level request['InfoStruct']['ShareInfo']['Level%d'%level]['Buffer'] = NULL
return dce.request(request)
request = NetrShareDelSticky() request['ServerName'] = NULL request['NetName'] = netName return dce.request(request)
# Sacala la h a estos 2, y tira todos los test cases juntos
|