1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-11-04 22:40:12 +01:00

Warn about config permissions before loading the defaults

Now, configs that don't contain passwords don't trigger the warning.
This commit is contained in:
Daniel Martí 2014-06-22 21:24:05 +02:00
parent 2686fa6faa
commit 0bce840571

View File

@ -92,6 +92,11 @@ def read_config(opts, config_file='config.py'):
'sun.security.pkcs11.SunPKCS11',
'-providerArg', 'opensc-fdroid.cfg']
if any(k in config for k in ["keystore", "keystorepass", "keypass"]):
st = os.stat(config_file)
if st.st_mode & stat.S_IRWXG or st.st_mode & stat.S_IRWXO:
logging.warn("unsafe permissions on {0} (should be 0600)!".format(config_file))
defconfig = get_default_config()
for k, v in defconfig.items():
if k not in config:
@ -107,11 +112,6 @@ def read_config(opts, config_file='config.py'):
if not test_sdk_exists(config):
sys.exit(3)
if any(k in config for k in ["keystore", "keystorepass", "keypass"]):
st = os.stat(config_file)
if st.st_mode & stat.S_IRWXG or st.st_mode & stat.S_IRWXO:
logging.warn("unsafe permissions on {0} (should be 0600)!".format(config_file))
for k in ["keystorepass", "keypass"]:
if k in config:
write_password_file(k)