app/django/utils/daemonize.py
changeset 323 ff1a9aa48cfd
parent 54 03e267d67478
--- a/app/django/utils/daemonize.py	Tue Oct 14 12:36:55 2008 +0000
+++ b/app/django/utils/daemonize.py	Tue Oct 14 16:00:59 2008 +0000
@@ -2,7 +2,8 @@
 import sys
 
 if os.name == 'posix':
-    def become_daemon(our_home_dir='.', out_log='/dev/null', err_log='/dev/null'):
+    def become_daemon(our_home_dir='.', out_log='/dev/null',
+                      err_log='/dev/null', umask=022):
         "Robustly turn into a UNIX daemon, running in our_home_dir."
         # First fork
         try:
@@ -13,7 +14,7 @@
             sys.exit(1)
         os.setsid()
         os.chdir(our_home_dir)
-        os.umask(0)
+        os.umask(umask)
 
         # Second fork
         try:
@@ -32,13 +33,13 @@
         # Set custom file descriptors so that they get proper buffering.
         sys.stdout, sys.stderr = so, se
 else:
-    def become_daemon(our_home_dir='.', out_log=None, err_log=None):
+    def become_daemon(our_home_dir='.', out_log=None, err_log=None, umask=022):
         """
         If we're not running under a POSIX system, just simulate the daemon
         mode by doing redirections and directory changing.
         """
         os.chdir(our_home_dir)
-        os.umask(0)
+        os.umask(umask)
         sys.stdin.close()
         sys.stdout.close()
         sys.stderr.close()