%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/
Upload File :
Create Path :
Current File : //proc/self/root/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyc

�
�ac@s�ddlZddlZddlZddlZddlZddlZddlZddlmZddlm	Z	ddl
TddlTddlm
Z
dd8d��YZdd9d	��YZd
efd��YZdefd
��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZd efd!��YZd"efd#��YZd$efd%��YZd&efd'��YZd(efd)��YZd*efd+��YZ d,efd-��YZ!d.efd/��YZ"d0efd1��YZ#d2efd3��YZ$d4efd5��YZ%d6efd7��YZ&dS(:i����N(tStringIO(t
ProtocolError(t*(tconvertFILETIMEtoEpochtSMB2MessagecBs�eZdZeje�ZdZeje�ZdZeje�Z	dZ
ejd�Z
dZdd�Zd�Zd�Zd	�Zd
�Zd�Zed��Zed
��ZRS(s	<4sHHIHHIs<IQQQ16ss	<IQIIQ16si@sSMB.SMB2MessageicCs0|j�|r,||_|jj|�ndS(N(tresettpayloadtinitMessage(tselfR((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyt__init__s
	cCst�}|jd|jtj|jd�tjf�|jd|jtjf�|jd|jtjf�|jd|j	tjf�|jd|j
tjf�|jd|jtjf�|jdt|j
�tjtj|j
�tjf�|j�S(	NsCommand: 0x%02X (%s) %ss	<unknown>sStatus: 0x%08X %ssFlags: 0x%02X %ss
PID: %d %ss
MID: %d %ss
TID: %d %ssData: %d bytes %s%s %s(RtwritetcommandtSMB2_COMMAND_NAMEStgettostlineseptstatustflagstpidtmidttidtlentdatatbinasciithexlifytgetvalue(Rtb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyt__str__ s	/8cCs�d|_d|_d|_d|_d|_d|_d|_d|_d|_	d|_
d|_d|_d|_
d|_d|_d|_d|_dS(Ntisils(traw_dataRRRtnext_command_offsetRt
session_idt	signaturetNoneRRtasync_idRRtflags2tuidtsecuritytparameters_data(R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR+s"																c	Cs�|jst�tj�|_|jj|�tj|jd|j	d|j
|jd|j�tj|j
|j|j|j|j|j|j�}||jS(s#
        Encode this SMB2 message into a series of bytes suitable to be embedded with a NetBIOS session message.
        AssertionError will be raised if this SMB message has not been initialized with a Payload instance

        @return: a string containing the encoded SMB2 message
        s�SMBi(RtAssertionErrorRtgetpidRtpreparetstructtpacktHEADER_STRUCT_FORMATtHEADER_SIZERRRtSYNC_HEADER_STRUCT_FORMATRRRRR R(Rtheaders_data((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pytencodeEs$7cCs$t|�}|dkr*td|��n|j�tj|j||j �\}}|_|_|_	|_
|_|dkr�td|��n||jkr�td��n|j
r+||j|jkr�td|��ntj|j||j|j|j!�\|_|_|_|_|_nu||j|jkrStd|��ntj|j||j|j|j!�\|_|_|_|_|_|_|jdkr�||j |_||j|j!|_n||_||j|_|j�|jr|jj|�nt|j�S(sN
        Decodes the SMB message in buf.
        All fields of the SMB2Message object will be reset to default values before decoding.
        On errors, do not assume that the fields will be reinstated back to what they are before
        this method is invoked.

        References
        ==========
        - [MS-SMB2]: 2.2.1

        @param buf: data containing one complete SMB2 message
        @type buf: string
        @return: a positive integer indicating the number of bytes used in buf to decode this SMB message
        @raise ProtocolError: raised when decoding fails
        i@s%Not enough data to decode SMB2 headers�SMBs"Invalid 4-byte SMB2 protocol fields"Invalid SMB2 header structure sizei(RRRR*tunpackR,tHEADER_STRUCT_SIZEt
credit_chargeRRt	credit_reRR-tisAsynctASYNC_HEADER_STRUCT_SIZEtASYNC_HEADER_STRUCT_FORMATRRR"RR tSYNC_HEADER_STRUCT_SIZER.RRRRt_decodeCommandRtdecode(Rtbuftbuf_lentprotocoltstruct_size((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:Vs6
@	>A	
	cCsl|jtkrt�|_nJ|jtkr<t�|_n,|jtkrZt�|_n|jtkrxt	�|_n�|jt
kr�t�|_n�|jtkr�t
�|_n�|jtkr�t�|_n�|jtkr�t�|_nx|jtkrt�|_nZ|jtkr,t�|_n<|jtkrJt�|_n|jtkrht�|_ndS(N(Rt
SMB2_COM_READtSMB2ReadResponseRtSMB2_COM_WRITEtSMB2WriteResponsetSMB2_COM_QUERY_DIRECTORYtSMB2QueryDirectoryResponsetSMB2_COM_CREATEtSMB2CreateResponsetSMB2_COM_CLOSEtSMB2CloseResponsetSMB2_COM_QUERY_INFOtSMB2QueryInfoResponsetSMB2_COM_SET_INFOtSMB2SetInfoResponsetSMB2_COM_IOCTLtSMB2IoctlResponsetSMB2_COM_TREE_CONNECTtSMB2TreeConnectResponsetSMB2_COM_SESSION_SETUPtSMB2SessionSetupResponsetSMB2_COM_NEGOTIATEtSMB2NegotiateResponset
SMB2_COM_ECHOtSMB2EchoResponse(R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9�s0cCst|jt@�S(N(tboolRtSMB2_FLAGS_ASYNC_COMMAND(R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR5�scCst|jt@�S(N(RWRtSMB2_FLAGS_SERVER_TO_REDIR(R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pytisReply�sN(t__name__t
__module__R,R*tcalcsizeR2R7R6R.R8R-tloggingt	getLoggertlogR=R!R	RRR0R:R9tpropertyR5RZ(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR
s"				;	t	StructurecBs#eZd�Zd�Zd�ZRS(cCsdS(N((Rtmessage((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�scCs
t�dS(N(tNotImplementedError(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)�scCs
t�dS(N(Rd(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:�s(R[R\RR)R:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRb�s		RTcBs,eZdZdZeje�Zd�ZRS(s�
    Contains information on the SMB2_NEGOTIATE response from server

    After calling the decode method, each instance will contain the following attributes,
    - security_mode (integer)
    - dialect_revision (integer)
    - server_guid (string)
    - max_transact_size (integer)
    - max_read_size (integer)
    - max_write_size (integer)
    - system_time (long)
    - server_start_time (long)
    - security_blob (string)

    References:
    ===========
    - [MS-SMB2]: 2.2.4
    s<HHHH16sIIIIQQHHIcCs�|jtkst�|jdkr�tj|j|jtj	tj	|j
!�\}|_|_}|_
|_|_|_|_|_|_}}}t|j�|_t|j�|_|j|||!|_ndS(Ni(RRSR'RR*R1tSTRUCTURE_FORMATRRR-tSTRUCTURE_SIZEt
security_modetdialect_revisiontserver_guidtcapabilitiestmax_transact_sizet
max_read_sizetmax_write_sizetsystem_timetserver_start_timeRt
security_blob(RRcR>t_tsecurity_buf_offsettsecurity_buf_len((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:�sq(R[R\t__doc__ReR*R]RfR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRT�stSMB2SessionSetupRequestcBs>eZdZdZeje�Zd�Zd�Zd�Z	RS(s<
    References:
    ===========
    - [MS-SMB2]: 2.2.5
    s	<HBBIIHHQcCs
||_dS(N(Rp(RRp((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	�scCstj||�t|_dS(N(RbRRQR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�sc
CsKtj|jdddddtj|jt|j�d�	|j|_dS(Niii(	R*R+ReRR-RfRRpR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)�s
(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRu�s		RRcBsJeZdZdZeje�Zed��Zed��Z	d�Z
RS(s 
    Contains information about the SMB2_COM_SESSION_SETUP response from the server.

    If the message has no errors, each instance contains the following attributes:
    - session_flags (integer)
    - security_blob (string)

    References:
    ===========
    - [MS-SMB2]: 2.2.6
    s<HHHHcCs|jd@dkS(Nii(t
session_flags(R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pytisGuestSessionscCs|jd@dkS(Nii(Rv(R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pytisAnonymousSessionscCsk|jtkst�tj|j|jtjtj|j	!�\}|_
}}|j|||!|_dS(N(RRQR'R*R1ReRRR-RfRvRp(RRcR>tsecurity_blob_offsettsecurity_blob_len((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:s;(R[R\RtReR*R]RfRaRwRxR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRRstSMB2TreeConnectRequestcBs>eZdZdZeje�Zd�Zd�Zd�Z	RS(s<
    References:
    ===========
    - [MS-SMB2]: 2.2.9
    s<HHHHcCs
||_dS(N(tpath(RR|((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	,scCstj||�t|_dS(N(RbRROR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR/scCsLtj|jddtj|jt|j�d�|jjd�|_	dS(Ni	iisUTF-16LE(
R*R+ReRR-RfRR|R0R(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)3s

(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR{"s		RPcBs,eZdZdZeje�Zd�ZRS(s�
    Contains information about the SMB2_COM_TREE_CONNECT response from the server.

    If the message has no errors, each instance contains the following attributes:
    - share_type (integer): one of the SMB2_SHARE_TYPE_xxx constants
    - share_flags (integer)
    - capabilities (integer): bitmask of SMB2_SHARE_CAP_xxx
    - maximal_access (integer)

    References:
    ===========
    - [MS-SMB2]: 2.2.10
    s<HBBIIIcCsu|jtkst�|jdkrqtj|j|jtj	tj	|j
!�\}|_}|_|_
|_ndS(Ni(RROR'RR*R1ReRRR-Rft
share_typetshare_flagsRjtmaximal_access(RRcR>Rq((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:Ms(R[R\RtReR*R]RfR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRP;s
tSMB2CreateRequestc	BsVeZdZdZeje�Zdddddeedd�Z	d�Z
d�ZRS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.13
    s<HBBIQQIIIIIHHIIiRc

Cs[||_||_||_||_||_||_||_||_|	pQd|_dS(NR(	tfilenametfile_attributestaccess_masktshare_accesstcreate_disptcreate_optionstoplockt
impersonationtcreate_context_data(
RR�R�R�R�R�R�R�R�R�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	`s								cCstj||�t|_dS(N(RbRRER(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRoscCs8|jjd�}|jr�tj|jt|�}|ddkrx|dd|d7}tj|jt|�}n|}||j7}nd}|s�d}n|ddks�t�tj	|j
dd|j|jdd|j
|j|j|j|jtj|jt|j�d|t|j��||_dS(NsUTF-16LEiisi9i(R�R0R�RR-RfRR'R*R+ReR�R�R�R�R�R�R�R(RRcR;tntcreate_context_offset((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)ss:		
(R[R\RtReR*R]Rft
SEC_ANONYMOUStSMB2_OPLOCK_LEVEL_NONER	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�Vs	RFcBs,eZdZdZeje�Zd�ZRS(s
    Contains information about the SMB2_COM_CREATE response from the server.

    If the message has no errors, each instance contains the following attributes:
    - oplock (integer): one of SMB2_OPLOCK_LEVEL_xxx constants
    - create_action (integer): one of SMB2_FILE_xxx constants
    - allocation_size (long)
    - file_size (long)
    - file_attributes (integer)
    - fid (16-bytes string)
    - create_time, lastaccess_time, lastwrite_time, change_time (float)

    References:
    ===========
    - [MS-SMB2]: 2.2.14
    s<HBBIQQQQQQII16sIIcCs�|jtkst�|jdkr�tj|j|jtj	tj	|j
!�\}|_}|_}}}}|_
|_|_}|_}}t|�|_t|�|_t|�|_t|�|_ndS(Ni(RRER'RR*R1ReRRR-RfR�t
create_actiontallocation_sizet	file_sizeR�tfidRtcreate_timetlastaccess_timetlastwrite_timetchange_time(RRcR>RqR�R�R�R�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:�sk(R[R\RtReR*R]RfR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRF�stSMB2WriteRequestcBsDeZdZdZeje�Zddd�Zd�Zd�Z	RS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.21
    s
<HHIQ16sIIHHIicCsIt|�dkst�||_||_||_||_||_dS(Ni(RR'R�Rtoffsett
remaining_lenR(RR�RR�R�R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	�s				cCstj||�t|_dS(N(RbRRAR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�scCs]tj|jdtj|jt|j�|j|j	d|j
dd|j�|j|_dS(Ni1i(R*R+ReRR-RfRRR�R�R�R(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)�s
(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR��s	RBcBs,eZdZdZeje�Zd�ZRS(s�
    Contains information about the SMB2_WRITE response from the server.

    If the message has no errors, each instance contains the following attributes:
    - count (integer)

    References:
    ===========
    - [MS-SMB2]: 2.2.22
    s<HHIIHHcCsl|jtkst�|jdkrhtj|j|jtj	tj	|j
!�\}}|_}}}ndS(Ni(RRAR'RR*R1ReRRR-Rftcount(RRcR>Rq((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:�s(R[R\RtReR*R]RfR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRB�s
tSMB2ReadRequestcBsAeZdZdZeje�Zdd�Zd�Zd�Z	RS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.19
    s<HBBIQ16sIIIHHicCs(||_||_||_||_dS(N(R�tread_offsettread_lentmin_read_len(RR�R�R�R�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	�s			cCstj||�t|_dS(N(RbRR?R(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRsc
CsJtj|jddd|j|j|j|jdddd�d|_dS(Ni1is(R*R+ReR�R�R�R�R(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)s(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR��s	R@cBs,eZdZdZeje�Zd�ZRS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.20
    s<HBBIIIcCs�|jtkst�|jdkr�tj|j|jtj	tj	|j
!�\}}}|_}}|j|||j!|_ndS(Ni(
RR?R'RR*R1ReRRR-Rftdata_lengthR(RRcR>tdata_offsetRq((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:!sA(R[R\RtReR*R]RfR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR@stSMB2IoctlRequestcBsAeZdZdZeje�Zdd�Zd�Zd�Z	RS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.31
    s<HHI16sIIIIIIIIicCs1||_||_||_||_||_dS(N(tctlcodeR�Rtin_datatmax_out_size(RR�R�RR�R�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	3s
				cCstj||�t|_dS(N(RbRRMR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:scCsctj|jdd|j|jtj|jt|j	�ddd|j
|jd�
|j	|_dS(Ni9i(
R*R+ReR�R�RR-RfRR�R�RR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)>s
(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�)s	RNcBs,eZdZdZeje�Zd�ZRS(sS
    Contains information about the SMB2_IOCTL response from the server.

    If the message has no errors, each instance contains the following attributes:
    - ctlcode (integer)
    - fid (16-bytes string)
    - flags (integer)
    - in_data (string)
    - out_data (string)

    References:
    ===========
    - [MS-SMB2]: 2.2.32
    s
<HHI16sIIIIIIc
Cs�|jtkst�|jdkr�tj|j|jtj	tj	|j
!�\
}}|_|_}}}}|_
}|dkr�|j|||!|_n	d|_|dkr�|j|||!|_q�d|_ndS(NiR(RRMR'RR*R1ReRRR-RfR�R�RR�tout_data(RRcR>Rqtinput_offsett	input_lent
output_offsett
output_len((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:bsS	(R[R\RtReR*R]RfR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRNOstSMB2CloseRequestcBsAeZdZdZeje�Zdd�Zd�Zd�Z	RS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.15
    s<HHI16sicCs||_||_dS(N(R�R(RR�R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	s	cCstj||�t|_dS(N(RbRRGR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�scCs+tj|jd|jd|j�|_dS(Nii(R*R+ReRR�R(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)�s
(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�us	RHcBseZdZd�ZRS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.16
    cCs|jtkst�dS(N(RRGR'(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:�s(R[R\RtR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRH�stSMB2QueryDirectoryRequestcBs>eZdZdZeje�Zd�Zd�Zd�Z	RS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.33
    s<HBBI16sHHIcCs1||_||_||_||_||_dS(N(R�R�t
info_classRtoutput_buf_len(RR�R�R�RR�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	�s
				cCstj||�t|_dS(N(RbRRCR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�sc
Csdtj|jd|j|jd|jtj|jt	|j
�d|j�	|j
jd�|_
dS(Ni!iisUTF-16LE(R*R+ReR�RR�RR-RfRR�R�R0R(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)�s
(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR��s		RDcBs,eZdZdZeje�Zd�ZRS(s
    Contains information about the SMB2_COM_QUERY_DIRECTORY response from the server.

    If the message has no errors, each instance contains the following attributes:
    - data_length (integer)
    - data (string)

    References:
    ===========
    - [MS-SMB2]: 2.2.34
    s<HHIcCs}|jtkst�|jdkrytj|j|jtj	tj	|j
!�\}}|_|j|||j!|_ndS(Ni(
RRCR'RR*R1ReRRR-RfR�R(RRcR>R�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:�s8(R[R\RtReR*R]RfR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRD�stSMB2QueryInfoRequestcBs>eZdZdZeje�Zd�Zd�Zd�Z	RS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.37
    s
<HBBIHHIII16scCsI||_||_||_||_||_||_|p?d|_dS(NR(R�Rtadditional_infot	info_typetfile_info_classR�t	input_buf(RR�RR�R�R�R�R�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	�s						cCstj||�t|_dS(N(RbRRIR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�scCsctj|jd|j|j|jtj|jdt	|j
�|j|j|j
�|j
|_dS(Ni)i(R*R+ReR�R�R�RR-RfRR�R�RR�R(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)�s
	(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR��s			RJcBs,eZdZdZeje�Zd�ZRS(s
    Contains information about the SMB2_COM_QUERY_INFO response from the server.

    If the message has no errors, each instance contains the following attributes:
    - data_length (integer)
    - data (string)

    References:
    ===========
    - [MS-SMB2]: 2.2.38
    s<HHIcCs}|jtkst�|jdkrytj|j|jtj	tj	|j
!�\}}|_|j|||j!|_ndS(Ni(
RRIR'RR*R1ReRRR-RfR�R(RRcR>t
buf_offset((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:	s8(R[R\RtReR*R]RfR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRJ�stSMB2SetInfoRequestcBs>eZdZdZeje�Zd�Zd�Zd�Z	RS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.39
    s<HBBIHHI16scCs7||_||_||_||_|p-d|_dS(NR(R�R�R�R�R(RR�R�R�R�R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	s
				cCstj||�t|_dS(N(RbRRKR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR"sc
CsWtj|jd|j|jt|j�tj|j	d|j
|j�	|j|_dS(Ni!i(R*R+ReR�R�RRRR-RfR�R�(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)&s
	(
R[R\RtReR*R]RfR	RR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�s		RLcBseZdZd�ZRS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.40
    cCsdS(N((RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:9s(R[R\RtR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRL2stSMB2EchoRequestcBs5eZdZdZeje�Zd�Zd�ZRS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.28
    s<HHcCstj||�t|_dS(N(RbRRUR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRGscCstj|jdd�|_dS(Nii(R*R+ReR(RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR)Ks(	R[R\RtReR*R]RfRR)(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�=s
	RVcBseZdZd�ZRS(s=
    References:
    ===========
    - [MS-SMB2]: 2.2.29
    cCsdS(N((RRc((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR:Ws(R[R\RtR:(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRVPs((('RtsysR*ttypesR^RttimeRtsmb_structsRt
smb_constantstsmb2_constantstutilsRRRbRTRuRRR{RPR�RFR�RBR�R@R�RNR�RHR�RDR�RJR�RLR�RV(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyt<module>s<T

�$!?$$$&&!&!

Zerion Mini Shell 1.0