forked from pool/python-bugzilla
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-bugzilla?expand=0&rev=53
43 lines
1.7 KiB
Diff
43 lines
1.7 KiB
Diff
---
|
|
bugzilla/base.py | 8 +++++++-
|
|
1 file changed, 7 insertions(+), 1 deletion(-)
|
|
|
|
--- a/bugzilla/base.py
|
|
+++ b/bugzilla/base.py
|
|
@@ -175,7 +175,8 @@ class Bugzilla(object):
|
|
def __init__(self, url=-1, user=None, password=None, cookiefile=-1,
|
|
sslverify=True, tokenfile=-1, use_creds=True, api_key=None,
|
|
cert=None, configpaths=-1,
|
|
- force_rest=False, force_xmlrpc=False, requests_session=None):
|
|
+ force_rest=False, force_xmlrpc=False, requests_session=None,
|
|
+ basic_auth=False):
|
|
"""
|
|
:param url: The bugzilla instance URL, which we will connect
|
|
to immediately. Most users will want to specify this at
|
|
@@ -212,6 +213,7 @@ class Bugzilla(object):
|
|
:param requests_session: An optional requests.Session object the
|
|
API will use to contact the remote bugzilla instance. This
|
|
way the API user can set up whatever auth bits they may need.
|
|
+ :param basic_auth: Use headers with HTTP Basic authentication
|
|
"""
|
|
if url == -1:
|
|
raise TypeError("Specify a valid bugzilla url, or pass url=None")
|
|
@@ -253,6 +255,7 @@ class Bugzilla(object):
|
|
self._setcookiefile(cookiefile)
|
|
self._settokenfile(tokenfile)
|
|
self._setconfigpath(configpaths)
|
|
+ self._basic_auth = basic_auth
|
|
|
|
if url:
|
|
self.connect(url)
|
|
@@ -607,6 +610,9 @@ class Bugzilla(object):
|
|
if not self.password:
|
|
raise ValueError("missing password")
|
|
|
|
+ if self._basic_auth:
|
|
+ self._transport.set_basic_auth(self.user, self.password)
|
|
+
|
|
payload = {"login": self.user}
|
|
if restrict_login:
|
|
payload['restrict_login'] = True
|