Set `raw=True` when reading passwords from ConfigParser files. (#35582)

* Set `raw=True` when reading passwords from ConfigParser files.

The assumption is that no one is actually doing interpolation on the
password value, even if they may for other configuration values, and
passwords are far more likely to contain '%'.

* Add vmware_inventory as well.
pull/38354/head
Bill Nottingham 7 years ago committed by Brian Coca
parent d5cfc54ef4
commit 15b6ec66bb

@ -138,7 +138,7 @@ class CloudFormsInventory(object):
warnings.warn("No username specified, you need to specify a CloudForms username.") warnings.warn("No username specified, you need to specify a CloudForms username.")
if config.has_option('cloudforms', 'password'): if config.has_option('cloudforms', 'password'):
self.cloudforms_pw = config.get('cloudforms', 'password') self.cloudforms_pw = config.get('cloudforms', 'password', raw=True)
else: else:
self.cloudforms_pw = None self.cloudforms_pw = None

@ -84,7 +84,7 @@ class ForemanInventory(object):
try: try:
self.foreman_url = config.get('foreman', 'url') self.foreman_url = config.get('foreman', 'url')
self.foreman_user = config.get('foreman', 'user') self.foreman_user = config.get('foreman', 'user')
self.foreman_pw = config.get('foreman', 'password') self.foreman_pw = config.get('foreman', 'password', raw=True)
self.foreman_ssl_verify = config.getboolean('foreman', 'ssl_verify') self.foreman_ssl_verify = config.getboolean('foreman', 'ssl_verify')
except (ConfigParser.NoOptionError, ConfigParser.NoSectionError) as e: except (ConfigParser.NoOptionError, ConfigParser.NoSectionError) as e:
print("Error parsing configuration: %s" % e, file=sys.stderr) print("Error parsing configuration: %s" % e, file=sys.stderr)

@ -138,7 +138,7 @@ def create_connection():
return sdk.Connection( return sdk.Connection(
url=config.get('ovirt', 'ovirt_url'), url=config.get('ovirt', 'ovirt_url'),
username=config.get('ovirt', 'ovirt_username'), username=config.get('ovirt', 'ovirt_username'),
password=config.get('ovirt', 'ovirt_password'), password=config.get('ovirt', 'ovirt_password', raw=True),
ca_file=config.get('ovirt', 'ovirt_ca_file'), ca_file=config.get('ovirt', 'ovirt_ca_file'),
insecure=config.get('ovirt', 'ovirt_ca_file') is None, insecure=config.get('ovirt', 'ovirt_ca_file') is None,
) )

@ -268,7 +268,7 @@ class VMWareInventory(object):
self.port = int(os.environ.get('VMWARE_PORT', config.get('vmware', 'port'))) self.port = int(os.environ.get('VMWARE_PORT', config.get('vmware', 'port')))
self.username = os.environ.get('VMWARE_USERNAME', config.get('vmware', 'username')) self.username = os.environ.get('VMWARE_USERNAME', config.get('vmware', 'username'))
self.debugl('username is %s' % self.username) self.debugl('username is %s' % self.username)
self.password = os.environ.get('VMWARE_PASSWORD', config.get('vmware', 'password')) self.password = os.environ.get('VMWARE_PASSWORD', config.get('vmware', 'password', raw=True))
self.validate_certs = os.environ.get('VMWARE_VALIDATE_CERTS', config.get('vmware', 'validate_certs')) self.validate_certs = os.environ.get('VMWARE_VALIDATE_CERTS', config.get('vmware', 'validate_certs'))
if self.validate_certs in ['no', 'false', 'False', False]: if self.validate_certs in ['no', 'false', 'False', False]:
self.validate_certs = False self.validate_certs = False

Loading…
Cancel
Save