Ñò ñ1Mc@s†dZddklZlZlZlZdefd„ƒYZeieƒdd d„ƒYZ d„Z d„Z d „Z d „Z d S( sB M2Crypto wrapper for OpenSSL ENGINE API. Pavel Shramov IMEC MSU iÿÿÿÿ(tm2tEVPtX509tErrt EngineErrorcBseZRS((t__name__t __module__(((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyR stEnginecBsžeZdZeiZdddd„Zd„Zd„Z d„Z dd„Z d„Z d „Z eid „Zdd „Zdd „Zdd „Zd„ZRS(sWrapper for ENGINE object.icCst| o| otdƒ‚n||_|ip4ti|ƒ|_|iptd|ƒ‚qgn||_dS(s5Create new Engine from ENGINE pointer or obtain by idsNo engine id specifiedsUnknown engine: %sN(t ValueErrort_ptrRt engine_by_idt_pyfree(tselftidR R ((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyt__init__s   cCs+t|ddƒo|i|iƒndS(NR i(tgetattrtm2_engine_freeR (R ((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyt__del__scCsti|iƒS(sgObtain a functional reference to the engine. @return: 0 on error, non-zero on success.(Rt engine_initR (R ((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytinit#scCsti|iƒS(s<Release a functional and structural reference to the engine.(Rt engine_finishR (R ((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytfinish)sicCs6ti|i|||ƒpttiƒƒ‚ndS(sCall ENGINE_ctrl_cmd_stringN(Rtengine_ctrl_cmd_stringR RRt get_error(R tcmdtargtoptional((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytctrl_cmd_string-scCsti|iƒS(sReturn engine name(Rtengine_get_nameR (R ((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytget_name2scCsti|iƒS(sReturn engine id(Rt engine_get_idR (R ((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytget_id6scCsti|i|ƒS(syUse this engine as default for methods specified in argument Possible values are bitwise OR of m2.ENGINE_METHOD_*(Rtengine_set_defaultR (R tmethods((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyt set_default:scCs~tiƒ}ti|ƒ}zN||i|||ƒ}|pttiƒƒ‚nti|ddƒ}Wdti |ƒX|S(s Helper function for loading keysR iN( Rt ui_openssltengine_pkcs11_data_newR RRRRtPKeytengine_pkcs11_data_free(R tfunctnametpintuitcbdtkptrtkey((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyt_engine_load_key?s cCs|iti||ƒS(srLoad private key with engine methods (e.g from smartcard). If pin is not set it will be asked (R.Rtengine_load_private_key(R R(R)((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytload_private_keyLscCs|iti||ƒS(s9Load public key with engine methods (e.g from smartcard).(R.Rtengine_load_public_key(R R(R)((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytload_public_keyRscCs?ti|i|ƒ}|ptdƒ‚nti|ddƒS(spLoad certificate from engine (e.g from smartcard). NOTE: This function may be not implemented by engine!sCertificate or card not foundR i(Rtengine_load_certificateR RR(R R(tcptr((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytload_certificateVsN(RRt__doc__Rt engine_freeRtNoneRRRRRRRtENGINE_METHOD_ALLR"R.R0R2R5(((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyRs         cCsZtiƒtdƒ}|id|ƒ|id|ƒ|iddƒ|iddƒ|S(s>Load and return dymanic engine from sopath and assign id to ittdynamictSO_PATHtIDtLIST_ADDt1tLOADN(Rtengine_load_dynamicRRR8(R tsopathte((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytload_dynamic_engine_s  cCstiƒdS(sLoad dynamic engineN(RR@(((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyt load_dynamicjscCstiƒdS(sLoad openssl engineN(Rtengine_load_openssl(((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyt load_openssloscCstiƒdS(sfIf you load any engines, you need to clean up after your application is finished with the engines.N(Rtengine_cleanup(((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pytcleanuptsN((R6tM2CryptoRRRRt ExceptionRtengine_init_errorRRCRDRFRH(((s5/usr/lib/python2.6/vendor-packages/M2Crypto/Engine.pyts" P