Author: andar

Revision: 5621

Log:
        Move generate_ssl_keys() out of RPCServer

Diff:
Modified: trunk/deluge/core/rpcserver.py
===================================================================
--- trunk/deluge/core/rpcserver.py      2009-08-03 20:27:03 UTC (rev 5620)
+++ trunk/deluge/core/rpcserver.py      2009-08-03 21:34:07 UTC (rev 5621)
@@ -334,11 +334,12 @@
         if not os.path.exists(ssl_dir):
             # The ssl folder doesn't exist so we need to create it
             os.makedirs(ssl_dir)
-            self.__generate_ssl_keys()
+            generate_ssl_keys()
         else:
             for f in ("daemon.pkey", "daemon.cert"):
                 if not os.path.exists(os.path.join(ssl_dir, f)):
-                    self.__generate_ssl_keys()
+                    generate_ssl_keys()
+                    break
 
         try:
             reactor.listenSSL(port, self.factory, ServerContextFactory(), 
interface=hostname)
@@ -402,36 +403,36 @@
                     (RPC_EVENT, event.name, event.args)
                 )
 
-    def __generate_ssl_keys(self):
-        """
-        This method generates a new SSL key/cert.
-        """
-        digest = "md5"
-        # Generate key pair
-        pkey = crypto.PKey()
-        pkey.generate_key(crypto.TYPE_RSA, 1024)
+def generate_ssl_keys():
+    """
+    This method generates a new SSL key/cert.
+    """
+    digest = "md5"
+    # Generate key pair
+    pkey = crypto.PKey()
+    pkey.generate_key(crypto.TYPE_RSA, 1024)
 
-        # Generate cert request
-        req = crypto.X509Req()
-        subj = req.get_subject()
-        setattr(subj, "CN", "Deluge Daemon")
-        req.set_pubkey(pkey)
-        req.sign(pkey, digest)
+    # Generate cert request
+    req = crypto.X509Req()
+    subj = req.get_subject()
+    setattr(subj, "CN", "Deluge Daemon")
+    req.set_pubkey(pkey)
+    req.sign(pkey, digest)
 
-        # Generate certificate
-        cert = crypto.X509()
-        cert.set_serial_number(0)
-        cert.gmtime_adj_notBefore(0)
-        cert.gmtime_adj_notAfter(60*60*24*365*5) # Five Years
-        cert.set_issuer(req.get_subject())
-        cert.set_subject(req.get_subject())
-        cert.set_pubkey(req.get_pubkey())
-        cert.sign(pkey, digest)
+    # Generate certificate
+    cert = crypto.X509()
+    cert.set_serial_number(0)
+    cert.gmtime_adj_notBefore(0)
+    cert.gmtime_adj_notAfter(60*60*24*365*5) # Five Years
+    cert.set_issuer(req.get_subject())
+    cert.set_subject(req.get_subject())
+    cert.set_pubkey(req.get_pubkey())
+    cert.sign(pkey, digest)
 
-        # Write out files
-        ssl_dir = deluge.configmanager.get_config_dir("ssl")
-        open(os.path.join(ssl_dir, "daemon.pkey"), 
"w").write(crypto.dump_privatekey(crypto.FILETYPE_PEM, pkey))
-        open(os.path.join(ssl_dir, "daemon.cert"), 
"w").write(crypto.dump_certificate(crypto.FILETYPE_PEM, cert))
-        # Make the files only readable by this user
-        for f in ("daemon.pkey", "daemon.cert"):
-            os.chmod(os.path.join(ssl_dir, f), stat.S_IREAD | stat.S_IWRITE)
+    # Write out files
+    ssl_dir = deluge.configmanager.get_config_dir("ssl")
+    open(os.path.join(ssl_dir, "daemon.pkey"), 
"w").write(crypto.dump_privatekey(crypto.FILETYPE_PEM, pkey))
+    open(os.path.join(ssl_dir, "daemon.cert"), 
"w").write(crypto.dump_certificate(crypto.FILETYPE_PEM, cert))
+    # Make the files only readable by this user
+    for f in ("daemon.pkey", "daemon.cert"):
+        os.chmod(os.path.join(ssl_dir, f), stat.S_IREAD | stat.S_IWRITE)



--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"deluge-commit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/deluge-commit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to