%PDF- %PDF-
Mini Shell

Mini Shell

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

�
�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�tj�|_|jj|�tj|jd|jd|j	|j
d|j�tj|j|j
|j|j|j|j|j�}||jS(Ns�SMBi(RtgetpidRRtpreparetstructtpacktHEADER_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(Ni@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.pyR9Vs6
@	>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.pyR8�s0cCst|jt@�S(N(tboolRtSMB2_FLAGS_ASYNC_COMMAND(R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR4�scCst|jt@�S(N(RVRtSMB2_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)tcalcsizeR1R6R5R-R7R,tloggingt	getLoggertlogR<R!R	RRR/R9R8tpropertyR4RY(((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(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(�scCs
t�dS(N(Rc(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9�s(RZR[RR(R9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRa�s		RScBs&eZdZeje�Zd�ZRS(s<HHHH16sIIIIQQHHIcCs�|jdkr�tj|j|jtjtj|j!�\}|_|_	}|_
|_|_|_
|_|_|_}}}t|j�|_t|j�|_|j|||!|_ndS(Ni(RR)R0tSTRUCTURE_FORMATRRR,tSTRUCTURE_SIZEt
security_modetdialect_revisiontserver_guidtcapabilitiestmax_transact_sizet
max_read_sizetmax_write_sizetsystem_timetserver_start_timeRt
security_blob(RRbR=t_tsecurity_buf_offsettsecurity_buf_len((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9�s
q(RZR[RdR)R\ReR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRS�stSMB2SessionSetupRequestcBs8eZdZeje�Zd�Zd�Zd�ZRS(s	<HBBIIHHQcCs
||_dS(N(Ro(RRo((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	�scCstj||�t|_dS(N(RaRRPR(RRb((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*RdRR,ReRRoR(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(�s
(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRs�s
		RQcBsDeZdZeje�Zed��Zed��Zd�Z	RS(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(Rt(R((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pytisAnonymousSessionscCsVtj|j|jtjtj|j!�\}|_}}|j|||!|_dS(N(	R)R0RdRRR,ReRtRo(RRbR=tsecurity_blob_offsettsecurity_blob_len((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9s;(
RZR[RdR)R\ReR`RuRvR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRQs

tSMB2TreeConnectRequestcBs8eZdZeje�Zd�Zd�Zd�ZRS(s<HHHHcCs
||_dS(N(tpath(RRz((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	,scCstj||�t|_dS(N(RaRRNR(RRb((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*RdRR,ReRRzR/R(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(3s

(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRy"s
		ROcBs&eZdZeje�Zd�ZRS(s<HBBIIIcCs`|jdkr\tj|j|jtjtj|j!�\}|_}|_	|_
|_ndS(Ni(RR)R0RdRRR,Ret
share_typetshare_flagsRitmaximal_access(RRbR=Rp((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9Ms(RZR[RdR)R\ReR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRO;stSMB2CreateRequestc	BsPeZdZeje�Zdddddeedd�Zd�Z	d�Z
RS(s<HBBIQQIIIIIHHIIiRc

Cs[||_||_||_||_||_||_||_||_|	pQd|_dS(NR(	tfilenametfile_attributestaccess_masktshare_accesstcreate_disptcreate_optionstoplockt
impersonationtcreate_context_data(
RRR�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(RaRRDR(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRoscCs"|jjd�}|jr�tj|jt|�}|ddkrx|dd|d7}tj|jt|�}n|}||j7}nd}|s�d}ntj|j	dd|j
|jdd|j|j
|j|j|jtj|jt|j�d|t|j��||_dS(NsUTF-16LEiisi9i(RR/R�RR,ReRR)R*RdR�R�R�R�R�R�R�R(RRbR:tntcreate_context_offset((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(ss8		
(RZR[RdR)R\Ret
SEC_ANONYMOUStSMB2_OPLOCK_LEVEL_NONER	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR~Vs	REcBs&eZdZeje�Zd�ZRS(s<HBBIQQQQQQII16sIIcCs�|jdkr�tj|j|jtjtj|j!�\}|_}|_	}}}}|_
|_|_}|_
}}t|�|_t|�|_t|�|_t|�|_ndS(Ni(RR)R0RdRRR,ReR�t
create_actiontallocation_sizet	file_sizeR�tfidRtcreate_timetlastaccess_timetlastwrite_timetchange_time(RRbR=RpR�R�R�R�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9�sk(RZR[RdR)R\ReR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRE�stSMB2WriteRequestcBs>eZdZeje�Zddd�Zd�Zd�ZRS(s
<HHIQ16sIIHHIicCs1||_||_||_||_||_dS(N(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(RaRR@R(RRb((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*RdRR,ReRRR�R�R�R(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(�s
(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR��s
	RAcBs&eZdZeje�Zd�ZRS(s<HHIIHHcCsW|jdkrStj|j|jtjtj|j!�\}}|_}}}ndS(Ni(	RR)R0RdRRR,Retcount(RRbR=Rp((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9�s(RZR[RdR)R\ReR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRA�stSMB2ReadRequestcBs;eZdZeje�Zdd�Zd�Zd�ZRS(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(RaRR>R(RRb((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*RdR�R�R�R�R(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(s(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR��s
	R?cBs&eZdZeje�Zd�ZRS(s<HBBIIIcCsq|jdkrmtj|j|jtjtj|j!�\}}}|_}}|j|||j!|_	ndS(Ni(
RR)R0RdRRR,Retdata_lengthR(RRbR=tdata_offsetRp((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9!sA(RZR[RdR)R\ReR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR?stSMB2IoctlRequestcBs;eZdZeje�Zdd�Zd�Zd�ZRS(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(RaRRLR(RRb((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*RdR�R�RR,ReRR�R�RR(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(>s
(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�)s
	RMcBs&eZdZeje�Zd�ZRS(s
<HHI16sIIIIIIc
Cs�|jdkr�tj|j|jtjtj|j!�\
}}|_|_	}}}}|_
}|dkr�|j|||!|_n	d|_|dkr�|j|||!|_q�d|_ndS(NiR(
RR)R0RdRRR,ReR�R�RR�tout_data(RRbR=Rptinput_offsett	input_lent
output_offsett
output_len((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9bsS	(RZR[RdR)R\ReR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRMOstSMB2CloseRequestcBs;eZdZeje�Zdd�Zd�Zd�ZRS(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(RaRRFR(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�scCs+tj|jd|jd|j�|_dS(Nii(R)R*RdRR�R(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(�s
(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�us
	RGcBseZd�ZRS(cCsdS(N((RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9�s(RZR[R9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRG�stSMB2QueryDirectoryRequestcBs8eZdZeje�Zd�Zd�Zd�ZRS(s<HBBI16sHHIcCs1||_||_||_||_||_dS(N(R�Rt
info_classRtoutput_buf_len(RR�RR�RR�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR	�s
				cCstj||�t|_dS(N(RaRRBR(RRb((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*RdR�RR�RR,ReRRR�R/R(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(�s
(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR��s
		RCcBs&eZdZeje�Zd�ZRS(s<HHIcCsh|jdkrdtj|j|jtjtj|j!�\}}|_|j|||j!|_	ndS(Ni(
RR)R0RdRRR,ReR�R(RRbR=R�((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9�s8(RZR[RdR)R\ReR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRC�s
tSMB2QueryInfoRequestcBs8eZdZeje�Zd�Zd�Zd�ZRS(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(RaRRHR(RRb((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*RdR�R�R�RR,ReRR�R�RR�R(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(�s
	(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR��s
			RIcBs&eZdZeje�Zd�ZRS(s<HHIcCsh|jdkrdtj|j|jtjtj|j!�\}}|_|j|||j!|_	ndS(Ni(
RR)R0RdRRR,ReR�R(RRbR=t
buf_offset((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9	s8(RZR[RdR)R\ReR9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRI�s
tSMB2SetInfoRequestcBs8eZdZeje�Zd�Zd�Zd�ZRS(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(RaRRJR(RRb((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*RdR�R�RRRR,ReR�R�(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(&s
	(	RZR[RdR)R\ReR	RR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�s
		RKcBseZd�ZRS(cCsdS(N((RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR99s(RZR[R9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRK2stSMB2EchoRequestcBs/eZdZeje�Zd�Zd�ZRS(s<HHcCstj||�t|_dS(N(RaRRTR(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRGscCstj|jdd�|_dS(Nii(R)R*RdR(RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR(Ks(RZR[RdR)R\ReRR((((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR�=s	RUcBseZd�ZRS(cCsdS(N((RRb((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyR9Ws(RZR[R9(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyRUPs((('RtsysR)ttypesR]RttimeRtsmb_structsRt
smb_constantstsmb2_constantstutilsRRRaRSRsRQRyROR~RER�RAR�R?R�RMR�RGR�RCR�RIR�RKR�RU(((sE/opt/plesk/python/2.7/lib/python2.7/site-packages/smb/smb2_structs.pyt<module>s<T

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

Zerion Mini Shell 1.0