1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-10-05 18:50:09 +02:00

set locale explicitly when using keytool

This commit is contained in:
Michael Pöhn 2018-08-03 04:36:00 +02:00
parent 545872f184
commit 74ae6a6a3b
4 changed files with 15 additions and 13 deletions

View File

@ -2895,10 +2895,9 @@ def genkeystore(localconfig):
if not os.path.exists(keystoredir): if not os.path.exists(keystoredir):
os.makedirs(keystoredir, mode=0o700) os.makedirs(keystoredir, mode=0o700)
env_vars = { env_vars = {'LC_ALL': 'C.UTF-8',
'FDROID_KEY_STORE_PASS': localconfig['keystorepass'], 'FDROID_KEY_STORE_PASS': localconfig['keystorepass'],
'FDROID_KEY_PASS': localconfig['keypass'], 'FDROID_KEY_PASS': localconfig['keypass']}
}
p = FDroidPopen([config['keytool'], '-genkey', p = FDroidPopen([config['keytool'], '-genkey',
'-keystore', localconfig['keystore'], '-keystore', localconfig['keystore'],
'-alias', localconfig['repo_keyalias'], '-alias', localconfig['repo_keyalias'],

View File

@ -620,7 +620,8 @@ def extract_pubkey():
if 'repo_pubkey' in common.config: if 'repo_pubkey' in common.config:
pubkey = unhexlify(common.config['repo_pubkey']) pubkey = unhexlify(common.config['repo_pubkey'])
else: else:
env_vars = {'FDROID_KEY_STORE_PASS': common.config['keystorepass']} env_vars = {'LC_ALL': 'C.UTF-8',
'FDROID_KEY_STORE_PASS': common.config['keystorepass']}
p = FDroidPopenBytes([common.config['keytool'], '-exportcert', p = FDroidPopenBytes([common.config['keytool'], '-exportcert',
'-alias', common.config['repo_keyalias'], '-alias', common.config['repo_keyalias'],
'-keystore', common.config['keystore'], '-keystore', common.config['keystore'],

View File

@ -59,11 +59,14 @@ def _ssh_key_from_debug_keystore(keystore=KEYSTORE_FILE):
'-srcstorepass', PASSWORD, '-srckeypass', PASSWORD, '-srcstorepass', PASSWORD, '-srckeypass', PASSWORD,
'-destkeystore', p12, '-destalias', KEY_ALIAS, '-destkeystore', p12, '-destalias', KEY_ALIAS,
'-deststorepass', PASSWORD, '-destkeypass', PASSWORD, '-deststorepass', PASSWORD, '-destkeypass', PASSWORD,
'-deststoretype', 'PKCS12']) '-deststoretype', 'PKCS12'],
env={'LC_ALL': 'C.UTF-8'})
subprocess.check_call(['openssl', 'pkcs12', '-in', p12, '-out', key_pem, subprocess.check_call(['openssl', 'pkcs12', '-in', p12, '-out', key_pem,
'-passin', 'pass:' + PASSWORD, '-passout', 'pass:' + PASSWORD]) '-passin', 'pass:' + PASSWORD, '-passout', 'pass:' + PASSWORD],
env={'LC_ALL': 'C.UTF-8'})
subprocess.check_call(['openssl', 'rsa', '-in', key_pem, '-out', privkey, subprocess.check_call(['openssl', 'rsa', '-in', key_pem, '-out', privkey,
'-passin', 'pass:' + PASSWORD]) '-passin', 'pass:' + PASSWORD],
env={'LC_ALL': 'C.UTF-8'})
os.remove(key_pem) os.remove(key_pem)
os.remove(p12) os.remove(p12)
os.chmod(privkey, 0o600) # os.umask() should cover this, but just in case os.chmod(privkey, 0o600) # os.umask() should cover this, but just in case

View File

@ -74,7 +74,7 @@ def read_fingerprints_from_keystore():
"""Obtain a dictionary containing all singning-key fingerprints which """Obtain a dictionary containing all singning-key fingerprints which
are managed by F-Droid, grouped by appid. are managed by F-Droid, grouped by appid.
""" """
env_vars = {'LC_ALL': 'C', env_vars = {'LC_ALL': 'C.UTF-8',
'FDROID_KEY_STORE_PASS': config['keystorepass'], 'FDROID_KEY_STORE_PASS': config['keystorepass'],
'FDROID_KEY_PASS': config['keypass']} 'FDROID_KEY_PASS': config['keypass']}
p = FDroidPopen([config['keytool'], '-list', p = FDroidPopen([config['keytool'], '-list',
@ -318,10 +318,9 @@ def main():
# See if we already have a key for this application, and # See if we already have a key for this application, and
# if not generate one... # if not generate one...
env_vars = { env_vars = {'LC_ALL': 'C.UTF-8',
'FDROID_KEY_STORE_PASS': config['keystorepass'], 'FDROID_KEY_STORE_PASS': config['keystorepass'],
'FDROID_KEY_PASS': config['keypass'], 'FDROID_KEY_PASS': config['keypass']}
}
p = FDroidPopen([config['keytool'], '-list', p = FDroidPopen([config['keytool'], '-list',
'-alias', keyalias, '-keystore', config['keystore'], '-alias', keyalias, '-keystore', config['keystore'],
'-storepass:env', 'FDROID_KEY_STORE_PASS'], envs=env_vars) '-storepass:env', 'FDROID_KEY_STORE_PASS'], envs=env_vars)