Securexmlrpcserver.

SecurexMLRPCServer è un modulo Python utilizzando Pyopensl 0.5.
Scarica ora

Securexmlrpcserver. Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Public Domain
  • Prezzo:
  • FREE
  • Nome editore:
  • Michal J. Wallace
  • Sito web dell'editore:
  • http://www.sabren.net/code/python/

Securexmlrpcserver. Tag


Securexmlrpcserver. Descrizione

Securexmlrpcserver è un modulo Python utilizzando Pyopensl 0.5. Securexmlrpcserver è un modulo Python utilizzando Pyopensl 0.5. Agisce come sostituzione a drop-in per SimpleXMLRPCServer dalla libreria Python standard. Esempio: Importa il SosketServerimport OS, Socketimport Simplexmlrpcserverfrom OpenSSL Importa SSLClass SSLBUGFIX: "" Connessione SSL tende a morire su Sendall, quindi uso invio () come soluzione di workaround. Questo è chiamato tramite socket._fileobject, che è necessario, quindi SocketServer (e Bambini) può trattare la connessione come file regolare. "" "Def __init __ (sé, CONN):" "" Per qualche motivo, non posso sottoporre la connessione , quindi sto facendo un proxy, invece. "" "Self .__ Dict __ = CONN DIF __GETTTR __ (Self, nome): return GAPATTR (Self .__ Dict __ , nome) def __settr __ (sé , Nome, Valore): SetaTtr (Self .__ Dict __ , Nome, Valore) Def Sendall (Self, Data): "" "Questo è il bugfix. Connection.Sendall () Segfaults su socket._FileObject.flush ( ), quindi solo ricavilo per usare Invia () invece. "" "Self .__ Dict __ . Invia (Data) Def Shutdown (Self, How = 1):" "" Questo non fa parte del bugfix . Simplexmlrpcserver.dopost chiama gli arresto (1) e CONN ection.shutdown () non prende una discussione. Quindi lo scardiamo: "" "Self .__ Dict __ . Spegnimento () def Accept (sé):" "" Questa è l'altra parte dello spegnimento () Workaround. Dal momento che i server creano nuove prese, dobbiamo infettarli con la nostra magia. :) "" "" C, A = Self .__ Dict __ . Accetta () Return (Sslbugfix (c), a) Classe SecuretCserver (SOCETSERVER.TCPServer): "" "Come TCPServer, ma usa una presa. Questo dovrebbe davvero permetterti di specificare i file chiave e certificati. "" "DEF __init __ (Self, Server_address, RequestHandlerClass): SocketServer.BaseServer .__ Init __ (Self, Server_address, RequestHandlerClass) ## Stento del normale, ma renderlo sicuro: ctx = ssl.context (ssl.slv23_method) ctx.set_options ( Ssl.op_no_slv2) dir = os.curdir ctx.use_privatekey_file (os.path.join (dir, "server.pkey")) ctx.use_certificate_file (os.path.join (dir, "server.Cert")) Self.Socket = Sslbugfix (ssl.connection (ctx, socket.socket (self.address_family, self.socket_type))) self.server_bind () self.server_activate () self.server_activate () class securexmlrpcquesthandler (simplexmlrpcserver.simplexmlrpcquesthandler): Def Setup (Self): "" " Dobbiamo usare il socket._fileobject perché ssl.connection non ha un 'dup'. Non esattamente sicuro del perché questo è, ma questo è supportato dai commenti in socket.py e ssl / connection.c "" "self.connection = self.request # per dopost self.rfile = socket._fileobject (self.request" rb ", self.rbufsize) self.wfile = socket._fileobject (self.request," wb ", self.wbufsize) Class Securexmlrpcserver (Simplexmlrpcserver.simplexmlrpcserver): def __init __ (self, addr, richiestaHandler = Securexmlrpcrequesthandler, Logrequests = 1) : "" "Questo è lo stesso identico codice di Simplexmlrpcserver .__ init__ tranne che chiama SecuretCserver .__ init__ invece di semplice vecchio tcpserver .__ init__" "" self.funch = {} self.logrequests = Logrequests Self.__ init __ ( Self, addr, richiestaHandler) Requisiti: · Python.


Securexmlrpcserver. Software correlato

XML :: DOM2.

XML :: DOM2 è un modulo XML rigoroso controllato da DOM per oggetti XML estentibili. ...

161

Scarica