Write out the new auth file right away and do not re-read the file if doing so
This commit is contained in:
parent
bbb087c04a
commit
b9a2bf786c
|
@ -33,7 +33,7 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
|
||||||
import os.path
|
import os
|
||||||
import random
|
import random
|
||||||
import stat
|
import stat
|
||||||
|
|
||||||
|
@ -101,12 +101,19 @@ class AuthManager(component.Component):
|
||||||
auth_file = configmanager.get_config_dir("auth")
|
auth_file = configmanager.get_config_dir("auth")
|
||||||
# Check for auth file and create if necessary
|
# Check for auth file and create if necessary
|
||||||
if not os.path.exists(auth_file):
|
if not os.path.exists(auth_file):
|
||||||
open(auth_file, "w").write(self.__create_localclient_account())
|
localclient = self.__create_localclient_account()
|
||||||
|
fd = open(auth_file, "w")
|
||||||
|
fd.write(localclient)
|
||||||
|
fd.flush()
|
||||||
|
os.fsync(fd.fileno())
|
||||||
|
fd.close()
|
||||||
# Change the permissions on the file so only this user can read/write it
|
# Change the permissions on the file so only this user can read/write it
|
||||||
os.chmod(auth_file, stat.S_IREAD | stat.S_IWRITE)
|
os.chmod(auth_file, stat.S_IREAD | stat.S_IWRITE)
|
||||||
|
f = [localclient]
|
||||||
|
else:
|
||||||
# Load the auth file into a dictionary: {username: password, ...}
|
# Load the auth file into a dictionary: {username: password, ...}
|
||||||
f = open(auth_file, "r")
|
f = open(auth_file, "r").readlines()
|
||||||
|
|
||||||
for line in f:
|
for line in f:
|
||||||
if line.startswith("#"):
|
if line.startswith("#"):
|
||||||
# This is a comment line
|
# This is a comment line
|
||||||
|
@ -128,6 +135,5 @@ class AuthManager(component.Component):
|
||||||
|
|
||||||
self.__auth[username.strip()] = (password.strip(), level)
|
self.__auth[username.strip()] = (password.strip(), level)
|
||||||
|
|
||||||
f.close()
|
|
||||||
if "localclient" not in self.__auth:
|
if "localclient" not in self.__auth:
|
||||||
open(auth_file, "a").write(self.__create_localclient_account())
|
open(auth_file, "a").write(self.__create_localclient_account())
|
||||||
|
|
Loading…
Reference in New Issue