mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Use six.moves.urllib instead of urllib/urllib2/urlparse
In Python 3, these modules are reorganized. Reviewed-By: David Kupka <dkupka@redhat.com> Reviewed-By: Jan Cholasta <jcholast@redhat.com> Reviewed-By: Martin Basti <mbasti@redhat.com>
This commit is contained in:
committed by
Jan Cholasta
parent
7f1204a42c
commit
70b37a956c
@@ -25,11 +25,12 @@ import os
|
||||
|
||||
import re
|
||||
import traceback
|
||||
from urllib2 import urlparse
|
||||
import ldap
|
||||
import socket
|
||||
import time
|
||||
|
||||
from six.moves.urllib.parse import urlparse
|
||||
|
||||
from ipapython import ipautil
|
||||
from ipaserver.install import replication, dsinstance, installutils
|
||||
from ipaserver.install import bindinstance, cainstance, certs
|
||||
@@ -376,7 +377,7 @@ def get_ruv(realm, host, dirman_passwd, nolookup=False):
|
||||
data = re.match('\{replica (\d+) (ldap://.*:\d+)\}(\s+\w+\s+\w*){0,1}', ruv)
|
||||
if data:
|
||||
rid = data.group(1)
|
||||
(scheme, netloc, path, params, query, fragment) = urlparse.urlparse(data.group(2))
|
||||
(scheme, netloc, path, params, query, fragment) = urlparse(data.group(2))
|
||||
servers.append((netloc, rid))
|
||||
else:
|
||||
print("unable to decode: %s" % ruv)
|
||||
|
||||
@@ -25,12 +25,12 @@ from __future__ import print_function
|
||||
|
||||
import sys
|
||||
import os
|
||||
import urlparse
|
||||
import time
|
||||
import tempfile
|
||||
import gssapi
|
||||
|
||||
import SSSDConfig
|
||||
from six.moves.urllib.parse import urlsplit
|
||||
|
||||
from optparse import OptionParser
|
||||
from ipalib import api, errors
|
||||
@@ -396,7 +396,7 @@ def main():
|
||||
root_logger.debug('Executing DNS discovery')
|
||||
if ret == ipadiscovery.NO_LDAP_SERVER:
|
||||
root_logger.debug('Autodiscovery did not find LDAP server')
|
||||
s = urlparse.urlsplit(api.env.xmlrpc_uri)
|
||||
s = urlsplit(api.env.xmlrpc_uri)
|
||||
server = [s.netloc]
|
||||
root_logger.debug('Setting server to %s' % s.netloc)
|
||||
else:
|
||||
|
||||
@@ -27,7 +27,6 @@ try:
|
||||
import os
|
||||
import time
|
||||
import socket
|
||||
import urlparse
|
||||
import tempfile
|
||||
import getpass
|
||||
from ConfigParser import RawConfigParser
|
||||
@@ -38,6 +37,7 @@ try:
|
||||
|
||||
import nss.nss as nss
|
||||
import SSSDConfig
|
||||
from six.moves.urllib.parse import urlparse, urlunparse
|
||||
|
||||
from ipapython.ipa_log_manager import standard_logging_setup, root_logger
|
||||
from ipaclient import ipadiscovery
|
||||
@@ -1877,7 +1877,7 @@ def get_ca_certs_from_file(url):
|
||||
'''
|
||||
|
||||
try:
|
||||
parsed = urlparse.urlparse(url, 'file')
|
||||
parsed = urlparse(url, 'file')
|
||||
except Exception:
|
||||
raise errors.FileError(reason="unable to parse file url '%s'" % url)
|
||||
|
||||
@@ -2014,16 +2014,16 @@ def get_ca_certs(fstore, options, server, basedn, realm):
|
||||
ca_file = CACERT + ".new"
|
||||
|
||||
def ldap_url():
|
||||
return urlparse.urlunparse(('ldap', ipautil.format_netloc(server),
|
||||
'', '', '', ''))
|
||||
return urlunparse(('ldap', ipautil.format_netloc(server),
|
||||
'', '', '', ''))
|
||||
|
||||
def file_url():
|
||||
return urlparse.urlunparse(('file', '', options.ca_cert_file,
|
||||
'', '', ''))
|
||||
return urlunparse(('file', '', options.ca_cert_file,
|
||||
'', '', ''))
|
||||
|
||||
def http_url():
|
||||
return urlparse.urlunparse(('http', ipautil.format_netloc(server),
|
||||
'/ipa/config/ca.crt', '', '', ''))
|
||||
return urlunparse(('http', ipautil.format_netloc(server),
|
||||
'/ipa/config/ca.crt', '', '', ''))
|
||||
|
||||
|
||||
interactive = not options.unattended
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
import os
|
||||
import tempfile
|
||||
import shutil
|
||||
import urlparse
|
||||
|
||||
from six.moves.urllib.parse import urlsplit
|
||||
|
||||
from ipapython import (admintool, ipautil, ipaldap, sysrestore, dogtag,
|
||||
certmonger, certdb)
|
||||
@@ -51,7 +52,7 @@ class CertUpdate(admintool.AdminTool):
|
||||
api.bootstrap(context='cli_installer')
|
||||
api.finalize()
|
||||
|
||||
server = urlparse.urlsplit(api.env.jsonrpc_uri).hostname
|
||||
server = urlsplit(api.env.jsonrpc_uri).hostname
|
||||
ldap = ipaldap.IPAdmin(server)
|
||||
|
||||
tmpdir = tempfile.mkdtemp(prefix="tmp-")
|
||||
|
||||
@@ -29,7 +29,6 @@ of the process.
|
||||
For the per-request thread-local information, see `ipalib.request`.
|
||||
"""
|
||||
|
||||
import urlparse
|
||||
from ConfigParser import RawConfigParser, ParsingError
|
||||
from types import NoneType
|
||||
import os
|
||||
@@ -37,6 +36,7 @@ from os import path
|
||||
import sys
|
||||
|
||||
import six
|
||||
from six.moves.urllib.parse import urlparse, urlunparse
|
||||
|
||||
from ipapython.dn import DN
|
||||
from ipalib.base import check_name
|
||||
@@ -559,9 +559,9 @@ class Env(object):
|
||||
xmlrpc_uri = defaults.get('xmlrpc_uri')
|
||||
if xmlrpc_uri:
|
||||
(scheme, netloc, uripath, params, query, fragment
|
||||
) = urlparse.urlparse(xmlrpc_uri)
|
||||
) = urlparse(xmlrpc_uri)
|
||||
uripath = uripath.replace('/xml', '/json', 1)
|
||||
self.jsonrpc_uri = urlparse.urlunparse((
|
||||
self.jsonrpc_uri = urlunparse((
|
||||
scheme, netloc, uripath, params, query, fragment))
|
||||
|
||||
self._merge(**defaults)
|
||||
|
||||
@@ -31,14 +31,11 @@ from ipapython.nsslib import NSSConnection
|
||||
|
||||
import base64
|
||||
import uuid
|
||||
import urllib
|
||||
import urllib2
|
||||
import httplib
|
||||
import urlparse
|
||||
import qrcode
|
||||
import os
|
||||
|
||||
import six
|
||||
from six.moves import urllib
|
||||
|
||||
if six.PY3:
|
||||
unicode = str
|
||||
@@ -339,8 +336,8 @@ class otptoken_add(LDAPCreate):
|
||||
args['counter'] = entry_attrs['ipatokenhotpcounter']
|
||||
|
||||
# Build the URI
|
||||
label = urllib.quote(entry_attrs['ipatokenuniqueid'])
|
||||
parameters = urllib.urlencode(args)
|
||||
label = urllib.parse.quote(entry_attrs['ipatokenuniqueid'])
|
||||
parameters = urllib.parse.urlencode(args)
|
||||
uri = u'otpauth://%s/%s:%s?%s' % (options['type'], issuer, label, parameters)
|
||||
setattr(context, 'uri', uri)
|
||||
|
||||
@@ -479,14 +476,14 @@ class otptoken_remove_managedby(LDAPRemoveMember):
|
||||
member_attributes = ['managedby']
|
||||
|
||||
|
||||
class HTTPSHandler(urllib2.HTTPSHandler):
|
||||
class HTTPSHandler(urllib.request.HTTPSHandler):
|
||||
"Opens SSL HTTPS connections that perform hostname validation."
|
||||
|
||||
def __init__(self, **kwargs):
|
||||
self.__kwargs = kwargs
|
||||
|
||||
# Can't use super() because the parent is an old-style class.
|
||||
urllib2.HTTPSHandler.__init__(self)
|
||||
urllib.request.HTTPSHandler.__init__(self)
|
||||
|
||||
def __inner(self, host, **kwargs):
|
||||
tmp = self.__kwargs.copy()
|
||||
@@ -496,6 +493,7 @@ class HTTPSHandler(urllib2.HTTPSHandler):
|
||||
return NSSConnection(host, **tmp)
|
||||
|
||||
def https_open(self, req):
|
||||
# pylint: disable=no-member
|
||||
return self.do_open(self.__inner, req)
|
||||
|
||||
@register()
|
||||
@@ -519,10 +517,12 @@ class otptoken_sync(Local):
|
||||
status = {'result': {self.header: 'unknown'}}
|
||||
|
||||
# Get the sync URI.
|
||||
segments = list(urlparse.urlparse(self.api.env.xmlrpc_uri))
|
||||
segments = list(urllib.parse.urlparse(self.api.env.xmlrpc_uri))
|
||||
assert segments[0] == 'https' # Ensure encryption.
|
||||
segments[2] = segments[2].replace('/xml', '/session/sync_token')
|
||||
sync_uri = urlparse.urlunparse(segments)
|
||||
# urlunparse *can* take one argument
|
||||
# pylint: disable=too-many-function-args
|
||||
sync_uri = urllib.parse.urlunparse(segments)
|
||||
|
||||
# Prepare the query.
|
||||
query = {k: v for k, v in kwargs.items()
|
||||
@@ -531,14 +531,14 @@ class otptoken_sync(Local):
|
||||
obj = self.api.Object.otptoken
|
||||
query['token'] = DN((obj.primary_key.name, args[0]),
|
||||
obj.container_dn, self.api.env.basedn)
|
||||
query = urllib.urlencode(query)
|
||||
query = urllib.parse.urlencode(query)
|
||||
|
||||
# Sync the token.
|
||||
# pylint: disable=E1101
|
||||
handler = HTTPSHandler(dbdir=paths.IPA_NSSDB_DIR,
|
||||
tls_version_min=api.env.tls_version_min,
|
||||
tls_version_max=api.env.tls_version_max)
|
||||
rsp = urllib2.build_opener(handler).open(sync_uri, query)
|
||||
rsp = urllib.request.build_opener(handler).open(sync_uri, query)
|
||||
if rsp.getcode() == 200:
|
||||
status['result'][self.header] = rsp.info().get(self.header, 'unknown')
|
||||
rsp.close()
|
||||
|
||||
@@ -37,10 +37,8 @@ import datetime
|
||||
import os
|
||||
import locale
|
||||
import base64
|
||||
import urllib
|
||||
import json
|
||||
import socket
|
||||
from urllib2 import urlparse
|
||||
from xmlrpclib import (Binary, Fault, DateTime, dumps, loads, ServerProxy,
|
||||
Transport, ProtocolError, MININT, MAXINT)
|
||||
|
||||
@@ -49,6 +47,7 @@ from dns import resolver, rdatatype
|
||||
from dns.exception import DNSException
|
||||
from nss.error import NSPRError
|
||||
import six
|
||||
from six.moves import urllib
|
||||
|
||||
from ipalib.backend import Connectible
|
||||
from ipalib.constants import LDAP_GENERALIZED_TIME_FORMAT
|
||||
@@ -720,7 +719,7 @@ class RPCClient(Connectible):
|
||||
"""
|
||||
# the configured URL defines what we use for the discovered servers
|
||||
(scheme, netloc, path, params, query, fragment
|
||||
) = urlparse.urlparse(rpc_uri)
|
||||
) = urllib.parse.urlparse(rpc_uri)
|
||||
servers = []
|
||||
name = '_ldap._tcp.%s.' % self.env.domain
|
||||
|
||||
@@ -828,9 +827,11 @@ class RPCClient(Connectible):
|
||||
setattr(context, 'session_cookie', session_cookie.http_cookie())
|
||||
|
||||
# Form the session URL by substituting the session path into the original URL
|
||||
scheme, netloc, path, params, query, fragment = urlparse.urlparse(original_url)
|
||||
scheme, netloc, path, params, query, fragment = urllib.parse.urlparse(original_url)
|
||||
path = self.session_path
|
||||
session_url = urlparse.urlunparse((scheme, netloc, path, params, query, fragment))
|
||||
# urlencode *can* take one argument
|
||||
# pylint: disable=too-many-function-args
|
||||
session_url = urllib.parse.urlunparse((scheme, netloc, path, params, query, fragment))
|
||||
|
||||
return session_url
|
||||
|
||||
@@ -1019,7 +1020,7 @@ class xmlclient(RPCClient):
|
||||
|
||||
class JSONServerProxy(object):
|
||||
def __init__(self, uri, transport, encoding, verbose, allow_none):
|
||||
split_uri = urllib.urlsplit(uri)
|
||||
split_uri = urllib.parse.urlsplit(uri)
|
||||
if split_uri.scheme not in ("http", "https"):
|
||||
raise IOError("unsupported XML-RPC protocol")
|
||||
self.__host = split_uri.netloc
|
||||
|
||||
@@ -21,7 +21,8 @@ import random
|
||||
import os
|
||||
import re
|
||||
import time
|
||||
from urllib2 import urlparse
|
||||
|
||||
from six.moves.urllib.parse import urlparse
|
||||
|
||||
from ipalib import errors
|
||||
from ipalib.text import _
|
||||
@@ -1085,7 +1086,7 @@ class MemcacheSessionManager(SessionManager):
|
||||
expiration = None;
|
||||
|
||||
cookie = Cookie(self.session_cookie_name, session_id,
|
||||
domain=urlparse.urlparse(api.env.xmlrpc_uri).netloc,
|
||||
domain=urlparse(api.env.xmlrpc_uri).netloc,
|
||||
path=url_path, httponly=True, secure=True,
|
||||
expires=expiration)
|
||||
if add_header:
|
||||
|
||||
@@ -29,12 +29,12 @@ import os
|
||||
import stat
|
||||
import socket
|
||||
import sys
|
||||
import urllib
|
||||
import base64
|
||||
|
||||
from subprocess import CalledProcessError
|
||||
from nss.error import NSPRError
|
||||
from pyasn1.error import PyAsn1Error
|
||||
from six.moves import urllib
|
||||
|
||||
from ipapython.ipa_log_manager import root_logger, log_mgr
|
||||
from ipapython import ipautil
|
||||
@@ -215,11 +215,11 @@ class RedHatTaskNamespace(BaseTaskNamespace):
|
||||
"Failed to decode certificate \"%s\": %s", nickname, e)
|
||||
continue
|
||||
|
||||
label = urllib.quote(nickname)
|
||||
subject = urllib.quote(subject)
|
||||
issuer = urllib.quote(issuer)
|
||||
serial_number = urllib.quote(serial_number)
|
||||
public_key_info = urllib.quote(public_key_info)
|
||||
label = urllib.parse.quote(nickname)
|
||||
subject = urllib.parse.quote(subject)
|
||||
issuer = urllib.parse.quote(issuer)
|
||||
serial_number = urllib.parse.quote(serial_number)
|
||||
public_key_info = urllib.parse.quote(public_key_info)
|
||||
|
||||
cert = base64.b64encode(cert)
|
||||
cert = x509.make_pem(cert)
|
||||
@@ -255,7 +255,7 @@ class RedHatTaskNamespace(BaseTaskNamespace):
|
||||
"Failed to encode extended key usage for \"%s\": %s",
|
||||
nickname, e)
|
||||
continue
|
||||
value = urllib.quote(ext_key_usage)
|
||||
value = urllib.parse.quote(ext_key_usage)
|
||||
obj = ("[p11-kit-object-v1]\n"
|
||||
"class: x-certificate-extension\n"
|
||||
"label: \"ExtendedKeyUsage for %(label)s\"\n"
|
||||
|
||||
@@ -25,10 +25,10 @@ from dns.exception import DNSException
|
||||
from ipapython.dn import DN
|
||||
from ipaplatform.paths import paths
|
||||
import dns.name
|
||||
from six.moves.urllib.parse import urlsplit
|
||||
|
||||
import socket
|
||||
import re
|
||||
import urlparse
|
||||
|
||||
class IPAConfigError(Exception):
|
||||
def __init__(self, msg=''):
|
||||
@@ -163,7 +163,7 @@ def __parse_config(discover_server = True):
|
||||
if discover_server:
|
||||
try:
|
||||
s = p.get("global", "xmlrpc_uri")
|
||||
server = urlparse.urlsplit(s)
|
||||
server = urlsplit(s)
|
||||
config.default_server.append(server.netloc)
|
||||
except:
|
||||
pass
|
||||
|
||||
@@ -21,10 +21,10 @@ import re
|
||||
import time
|
||||
import datetime
|
||||
import email.utils
|
||||
from urllib2 import urlparse
|
||||
from calendar import timegm
|
||||
|
||||
import six
|
||||
from six.moves.urllib.parse import urlparse
|
||||
|
||||
from ipapython.ipa_log_manager import log_mgr
|
||||
|
||||
@@ -540,7 +540,7 @@ class Cookie(object):
|
||||
received from.
|
||||
'''
|
||||
|
||||
scheme, domain, path, params, query, fragment = urlparse.urlparse(url)
|
||||
scheme, domain, path, params, query, fragment = urlparse(url)
|
||||
|
||||
if self.domain is None:
|
||||
self.domain = domain.lower()
|
||||
@@ -642,7 +642,7 @@ class Cookie(object):
|
||||
|
||||
cookie_name = self.key
|
||||
|
||||
url_scheme, url_domain, url_path, url_params, url_query, url_fragment = urlparse.urlparse(url)
|
||||
url_scheme, url_domain, url_path, url_params, url_query, url_fragment = urlparse(url)
|
||||
|
||||
cookie_expiration = self.get_expiration()
|
||||
if cookie_expiration is not None:
|
||||
|
||||
@@ -22,10 +22,10 @@ import os
|
||||
import httplib
|
||||
import xml.dom.minidom
|
||||
import ConfigParser
|
||||
from urllib import urlencode
|
||||
|
||||
import nss.nss as nss
|
||||
import six
|
||||
from six.moves.urllib.parse import urlencode
|
||||
|
||||
from ipalib import api, errors
|
||||
from ipalib.errors import NetworkError
|
||||
|
||||
@@ -27,7 +27,6 @@ import os, sys, traceback
|
||||
import copy
|
||||
import stat
|
||||
import shutil
|
||||
import urllib2
|
||||
import socket
|
||||
import struct
|
||||
from types import *
|
||||
@@ -45,6 +44,7 @@ from dns import resolver, rdatatype
|
||||
from dns.exception import DNSException
|
||||
import six
|
||||
from six.moves import input
|
||||
from six.moves import urllib
|
||||
|
||||
from ipapython.ipa_log_manager import *
|
||||
from ipapython import ipavalidate
|
||||
@@ -391,7 +391,7 @@ def nolog_replace(string, nolog):
|
||||
if not isinstance(value, six.string_types):
|
||||
continue
|
||||
|
||||
quoted = urllib2.quote(value)
|
||||
quoted = urllib.parse.quote(value)
|
||||
shquoted = shell_quote(value)
|
||||
for nolog_value in (shquoted, value, quoted):
|
||||
string = string.replace(nolog_value, 'XXXXXXXX')
|
||||
|
||||
@@ -38,11 +38,12 @@ import sys
|
||||
import syslog
|
||||
import time
|
||||
import tempfile
|
||||
import urllib
|
||||
import xml.dom.minidom
|
||||
import shlex
|
||||
import pipes
|
||||
|
||||
from six.moves import urllib
|
||||
|
||||
from ipalib import api
|
||||
from ipalib import pkcs10, x509
|
||||
from ipalib import errors
|
||||
@@ -846,7 +847,7 @@ class CAInstance(DogtagInstance):
|
||||
params['op'] = 'approve'
|
||||
params['submit'] = 'submit'
|
||||
params['requestNotes'] = ''
|
||||
params = urllib.urlencode(params)
|
||||
params = urllib.parse.urlencode(params)
|
||||
|
||||
# Now issue the RA certificate.
|
||||
args = [
|
||||
@@ -1074,7 +1075,7 @@ class CAInstance(DogtagInstance):
|
||||
# Send the request to the CA
|
||||
conn = httplib.HTTPConnection(
|
||||
self.fqdn, self.dogtag_constants.UNSECURE_PORT)
|
||||
params = urllib.urlencode({'profileId': 'caServerCert',
|
||||
params = urllib.parse.urlencode({'profileId': 'caServerCert',
|
||||
'cert_request_type': 'pkcs10',
|
||||
'requestor_name': 'IPA Installer',
|
||||
'cert_request': csr,
|
||||
|
||||
@@ -244,13 +244,13 @@ from lxml import etree
|
||||
import os
|
||||
import tempfile
|
||||
import time
|
||||
import urllib2
|
||||
|
||||
import pki
|
||||
from pki.client import PKIConnection
|
||||
import pki.crypto as cryptoutil
|
||||
from pki.kra import KRAClient
|
||||
import six
|
||||
from six.moves import urllib
|
||||
|
||||
from ipalib import Backend
|
||||
from ipapython.dn import DN
|
||||
@@ -1843,21 +1843,21 @@ class ra(rabase.rabase):
|
||||
|
||||
url = 'http://%s/ca/rest/certs/search?size=%d' % (ipautil.format_netloc(self.ca_host, ipapython.dogtag.configured_constants().UNSECURE_PORT), options.get('sizelimit', 100))
|
||||
|
||||
opener = urllib2.build_opener()
|
||||
opener = urllib.request.build_opener()
|
||||
opener.addheaders = [('Accept-Encoding', 'gzip, deflate'),
|
||||
('User-Agent', 'IPA')]
|
||||
|
||||
req = urllib2.Request(url=url, data=payload, headers={'Content-Type': 'application/xml'})
|
||||
req = urllib.request.Request(url=url, data=payload, headers={'Content-Type': 'application/xml'})
|
||||
try:
|
||||
response = opener.open(req)
|
||||
except urllib2.HTTPError, e:
|
||||
except urllib.error.HTTPError as e:
|
||||
self.debug('HTTP Response code: %d' % e.getcode())
|
||||
if e.getcode() == 501:
|
||||
self.raise_certificate_operation_error('find',
|
||||
detail=_('find not supported on CAs upgraded from 9 to 10'))
|
||||
self.raise_certificate_operation_error('find',
|
||||
detail=e.msg)
|
||||
except urllib2.URLError, e:
|
||||
except urllib.error.URLError as e:
|
||||
self.raise_certificate_operation_error('find',
|
||||
detail=e.reason)
|
||||
|
||||
@@ -1866,7 +1866,7 @@ class ra(rabase.rabase):
|
||||
parser = etree.XMLParser()
|
||||
try:
|
||||
doc = etree.fromstring(data[0], parser)
|
||||
except etree.XMLSyntaxError, e:
|
||||
except etree.XMLSyntaxError as e:
|
||||
self.raise_certificate_operation_error('find',
|
||||
detail=e.msg)
|
||||
|
||||
|
||||
@@ -27,7 +27,6 @@ from xml.sax.saxutils import escape
|
||||
from xmlrpclib import Fault
|
||||
import os
|
||||
import datetime
|
||||
import urlparse
|
||||
import json
|
||||
import traceback
|
||||
import gssapi
|
||||
@@ -37,6 +36,7 @@ import ldap.controls
|
||||
from pyasn1.type import univ, namedtype
|
||||
from pyasn1.codec.ber import encoder
|
||||
import six
|
||||
from six.moves.urllib.parse import parse_qs
|
||||
|
||||
from ipalib import plugable, errors
|
||||
from ipalib.capabilities import VERSION_WITHOUT_CAPABILITIES
|
||||
@@ -225,9 +225,7 @@ def extract_query(environ):
|
||||
elif environ['REQUEST_METHOD'] == 'GET':
|
||||
qstr = environ['QUERY_STRING']
|
||||
if qstr:
|
||||
query = dict(nicify_query(
|
||||
urlparse.parse_qs(qstr)#, keep_blank_values=True)
|
||||
))
|
||||
query = dict(nicify_query(parse_qs(qstr))) # keep_blank_values=True)
|
||||
else:
|
||||
query = {}
|
||||
environ['wsgi.query'] = query
|
||||
@@ -892,7 +890,7 @@ class login_password(Backend, KerberosSession, HTTP_Status):
|
||||
return self.bad_request(environ, start_response, "HTTP request method must be POST")
|
||||
|
||||
try:
|
||||
query_dict = urlparse.parse_qs(query_string)
|
||||
query_dict = parse_qs(query_string)
|
||||
except Exception as e:
|
||||
return self.bad_request(environ, start_response, "cannot parse query data")
|
||||
|
||||
@@ -1013,7 +1011,7 @@ class change_password(Backend, HTTP_Status):
|
||||
return self.bad_request(environ, start_response, "HTTP request method must be POST")
|
||||
|
||||
try:
|
||||
query_dict = urlparse.parse_qs(query_string)
|
||||
query_dict = parse_qs(query_string)
|
||||
except Exception as e:
|
||||
return self.bad_request(environ, start_response, "cannot parse query data")
|
||||
|
||||
@@ -1115,7 +1113,7 @@ class sync_token(Backend, HTTP_Status):
|
||||
|
||||
# Parse the query string to a dictionary.
|
||||
try:
|
||||
query_dict = urlparse.parse_qs(query_string)
|
||||
query_dict = parse_qs(query_string)
|
||||
except Exception as e:
|
||||
return self.bad_request(environ, start_response, "cannot parse query data")
|
||||
data = {}
|
||||
|
||||
@@ -20,9 +20,10 @@
|
||||
Base class for HTTP request tests
|
||||
"""
|
||||
|
||||
import urllib
|
||||
import httplib
|
||||
|
||||
from six.moves import urllib
|
||||
|
||||
from ipalib import api
|
||||
|
||||
class Unauthorized_HTTP_test(object):
|
||||
@@ -41,7 +42,9 @@ class Unauthorized_HTTP_test(object):
|
||||
:param key When not None, overrides default app_uri
|
||||
"""
|
||||
if params is not None:
|
||||
params = urllib.urlencode(params, True)
|
||||
# urlencode *can* take two arguments
|
||||
# pylint: disable=too-many-function-args
|
||||
params = urllib.parse.urlencode(params, True)
|
||||
url = 'https://' + self.host + self.app_uri
|
||||
|
||||
headers = {'Content-Type' : self.content_type,
|
||||
|
||||
@@ -53,7 +53,7 @@ try:
|
||||
NO_YAML = False
|
||||
except ImportError:
|
||||
NO_YAML = True
|
||||
from urllib2 import URLError
|
||||
from six.moves.urllib.error import URLError
|
||||
from ipaplatform.paths import paths
|
||||
|
||||
ENV_MAP = {
|
||||
|
||||
Reference in New Issue
Block a user