Fix not so random random passwords

If you run ipa_generate_password() multiple times, one
after the other, then you get the same password each time.

This is because it uses the current time to seed the
pseudo random number generator.

The easiest solution is to just use the default method
which seeds itself from /dev/urandom if available,
and uses a fractional time value otherwise.

Signed-off-by: Mark McLoughlin <markmc@redhat.com>
This commit is contained in:
Mark McLoughlin 2008-01-22 16:42:45 +00:00
parent 11266d039f
commit 996a3f6698

View File

@ -24,8 +24,7 @@ import string
import tempfile
import logging
import subprocess
from random import Random
from time import gmtime
import random
import os, sys, traceback, readline
import stat
import shutil
@ -364,8 +363,7 @@ def parse_generalized_time(timestr):
def ipa_generate_password():
rndpwd = ''
r = Random()
r.seed(gmtime())
r = random.Random()
for x in range(12):
# rndpwd += chr(r.randint(32,126))
rndpwd += chr(r.randint(65,90)) #stricter set for testing