±ù…b¦ã@sddlmZddlZddlZddlZddlZedkrRd‚ddlTddlmZe ej ƒdks²e ej ƒdkr±ej dj ƒj d ƒr±e d ƒe d eƒe d ƒe d eƒe d ƒe d ƒer e dƒn e dƒer&e dƒn e dƒerCe dƒn e dƒe d ƒe dƒe d ƒe dƒe d ƒe dƒe dƒe dƒe dƒejƒej dj ƒZGdd„dƒZeej ƒZdd„Zyed kr@ejdƒj ƒZedkr/e d ƒqòe deƒn²ed krtejdƒZeeƒZejƒn~ed!kr2ejdƒZejd"ƒZejd#ƒZeeƒZej ƒeekrãe d$ƒejƒe!ejd%ƒƒZ"ej#eee"ƒ\Z$Z%Z&Z'e$e%e&e'feez$ add []z del z check []z list c@s4eZdZdd„Zdd„Zdd„ZdS)ÚArgscCs ||_dS)N)Úargv)Úselfr ©r úI/tmp/pip-build-9lspz_kf/tlslite-ng/tlslite_ng-0.7.6.data/scripts/tlsdb.pyÚ__init__7sz Args.__init__cCs,t|jƒ|kr!tdƒ‚|j|S)NzNot enough arguments)Úlenr Ú SyntaxError)r Úindexr r rÚget9s zArgs.getcCs2t|jƒ|dkr%tdƒ‚|j|ƒS)NrzToo many arguments)rr rr)r rr r rÚgetLast=s z Args.getLastN)Ú__name__Ú __module__Ú __qualname__rrrr r r rr 6s   r cCsG|jƒ}g}x%|D]}|jd|jƒƒqWdj|ƒS)Nz Ú )Ú splitlinesÚappendÚstripÚjoin)ÚsÚlinesÚnewLinesÚliner r rÚreformatDocStringDs   r!ZvalidzBad command: '%s'Z createsrpÚaddéézUser already in database!éÚdelÚcheckzUsername existszPassword is correctzPassword is wrongzUsername does not existÚlistzVerifier DatabasecCs3|dkrdSttjtj|dƒƒdƒS)Nrrr)ÚintÚmathÚfloorÚlog)Únr r rÚnumBitsŒs r.).Ú __future__rÚsysÚosÚsocketr*rZtlsliterrr ÚlowerÚendswithÚprintZprngNameZm2cryptoLoadedZpycryptoLoadedZ gmpyLoadedÚexitÚcmdr Úargsr!rÚcommandrZdbNameZ VerifierDBÚdbÚcreateÚusernameÚpasswordÚopenr)ÚbitsZ makeVerifierÚNÚgZsaltZverifierr'ÚKeyErrorr.ÚkeysrÚvr r r rÚ sÀ      F                                  !