Django

Code

Changeset 7800

Show
Ignore:
Timestamp:
06/30/08 06:22:41 (2 months ago)
Author:
mtredinnick
Message:

Fixed #6994 -- For fastcgi, set a more sensible default umask.
Also allow the umask value to be customised. Thanks, Antonis Christofides.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/AUTHORS

    r7790 r7800  
    9595    ivan.chelubeev@gmail.com 
    9696    Bryan Chow <bryan at verdjn dot com> 
     97    Antonis Christofides <anthony@itia.ntua.gr> 
    9798    Michal Chruszcz <troll@pld-linux.org> 
    9899    Can Burak Çilingir <canburak@cs.bilgi.edu.tr> 
  • django/trunk/django/core/servers/fastcgi.py

    r7297 r7800  
    4141  outlog=FILE          write stdout to this file. 
    4242  errlog=FILE          write stderr to this file. 
     43  umask=UMASK          umask to use when daemonizing (default 022). 
    4344 
    4445Examples: 
     
    7475    'outlog': None, 
    7576    'errlog': None, 
     77    'umask': None, 
    7678} 
    7779 
     
    160162    if options['errlog']: 
    161163        daemon_kwargs['err_log'] = options['errlog'] 
     164    if options['umask']: 
     165        daemon_kwargs['umask'] = int(options['umask']) 
    162166 
    163167    if daemonize: 
  • django/trunk/django/utils/daemonize.py

    r7297 r7800  
    33 
    44if os.name == 'posix': 
    5     def become_daemon(our_home_dir='.', out_log='/dev/null', err_log='/dev/null'): 
     5    def become_daemon(our_home_dir='.', out_log='/dev/null', 
     6                      err_log='/dev/null', umask=022): 
    67        "Robustly turn into a UNIX daemon, running in our_home_dir." 
    78        # First fork 
     
    1415        os.setsid() 
    1516        os.chdir(our_home_dir) 
    16         os.umask(0
     17        os.umask(umask
    1718 
    1819        # Second fork 
     
    3334        sys.stdout, sys.stderr = so, se 
    3435else: 
    35     def become_daemon(our_home_dir='.', out_log=None, err_log=None): 
     36    def become_daemon(our_home_dir='.', out_log=None, err_log=None, umask=022): 
    3637        """ 
    3738        If we're not running under a POSIX system, just simulate the daemon 
     
    3940        """ 
    4041        os.chdir(our_home_dir) 
    41         os.umask(0
     42        os.umask(umask
    4243        sys.stdin.close() 
    4344        sys.stdout.close()