Django

Code

Ticket #6648: 6648_fix_random_number_generator_fcgi_fork.diff

File 6648_fix_random_number_generator_fcgi_fork.diff, 0.8 kB (added by peritus <peritus@j03.de>, 1 year ago)

Resets the random number generator's seed for each fcgi-child

  • a/django/core/handlers/wsgi.py

    old new  
    206206        # settings weren't available. 
    207207        if self._request_middleware is None: 
    208208            self.initLock.acquire() 
     209 
     210            # reset pseudo random number generator, so preforked processes 
     211            # won't start with the same (time-based) seed. 
     212            from os import getpid 
     213            from time import ctime 
     214            import random 
     215 
     216            random.seed("%d%s" % (getpid(), ctime())) 
     217 
    209218            # Check that middleware is still uninitialised. 
    210219            if self._request_middleware is None: 
    211220                self.load_middleware()