def _parse_ssl_options(options):
 use_ssl = options.get('ssl')
 if (use_ssl is not None):
  validate_boolean('ssl', use_ssl)
 certfile = options.get('ssl_certfile')
 keyfile = options.get('ssl_keyfile')
 passphrase = options.get('ssl_pem_passphrase')
 ca_certs = options.get('ssl_ca_certs')
 cert_reqs = options.get('ssl_cert_reqs')
 match_hostname = options.get('ssl_match_hostname', True)
 crlfile = options.get('ssl_crlfile')
 ssl_kwarg_keys = [k for k in options if (k.startswith('ssl_') and options[k])]
 if ((use_ssl == False) and ssl_kwarg_keys):
  raise ConfigurationError(('ssl has not been enabled but the following ssl parameters have been set: %s. Please set `ssl=True` or remove.' % ', '.join(ssl_kwarg_keys)))
 if (ssl_kwarg_keys and (use_ssl is None)):
  use_ssl = True
 if (use_ssl is True):
  ctx = get_ssl_context(certfile, keyfile, passphrase, ca_certs, cert_reqs, crlfile)
  return (ctx, match_hostname)
 return (None, match_hostname)

def _parse_ssl_options ( options ) : use_ssl = options . get ( 'ssl' ) if ( use_ssl is not None ) : validate_boolean ( 'ssl' , use_ssl ) certfile = options . get ( 'ssl_certfile' ) keyfile = options . get ( 'ssl_keyfile' ) passphrase = options . get ( 'ssl_pem_passphrase' ) ca_certs = options . get ( 'ssl_ca_certs' ) cert_reqs = options . get ( 'ssl_cert_reqs' ) match_hostname = options . get ( 'ssl_match_hostname' , True ) crlfile = options . get ( 'ssl_crlfile' ) ssl_kwarg_keys = [ k for k in options if ( k . startswith ( 'ssl_' ) and options [ k ] ) ] if ( ( use_ssl == False ) and ssl_kwarg_keys ) : raise ConfigurationError ( ( 'ssl has not been enabled but the following ssl parameters have been set: %s. Please set `ssl=True` or remove.' % ', ' . join ( ssl_kwarg_keys ) ) ) if ( ssl_kwarg_keys and ( use_ssl is None ) ) : use_ssl = True if ( use_ssl is True ) : ctx = get_ssl_context ( certfile , keyfile , passphrase , ca_certs , cert_reqs , crlfile ) return ( ctx , match_hostname ) return ( None , match_hostname )
parse ssl options .