From 22dc6010ac98947ae408ff5de820db4cf690bc7b Mon Sep 17 00:00:00 2001 From: Matěj Cepl Date: Mon, 9 Dec 2013 16:55:20 +0100 Subject: Don’t panick in case we succeed. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test_trac.py | 14 ++++++++++++++ urllib2_kerberos.py | 4 +++- 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 test_trac.py diff --git a/test_trac.py b/test_trac.py new file mode 100644 index 0000000..06cbb77 --- /dev/null +++ b/test_trac.py @@ -0,0 +1,14 @@ +#!/usr/bin/python +import urllib2 +import cookielib +import urllib2_kerberos + + +cj = cookielib.CookieJar() +opener = urllib2.build_opener(urllib2.HTTPSHandler(debuglevel=2), + urllib2.HTTPRedirectHandler, + urllib2.HTTPCookieProcessor(cj), + urllib2_kerberos.HTTPKerberosAuthHandler) + +response = opener.open( + 'https://trac.dqe.lab.eng.bos.redhat.com/desktopqe-backlog/login') diff --git a/urllib2_kerberos.py b/urllib2_kerberos.py index ecac521..84542bd 100644 --- a/urllib2_kerberos.py +++ b/urllib2_kerberos.py @@ -46,6 +46,7 @@ class AbstractKerberosAuthHandler: """checks for "Negotiate" in proper auth header """ authreq = headers.get(self.auth_header, None) + log.debug('authreq = {}'.format(authreq)) if authreq: rx = re.compile(r'(?:.*,)*\s*Negotiate\s*([^,]*),?', re.I) @@ -136,7 +137,8 @@ class AbstractKerberosAuthHandler: req.add_unredirected_header(self.authz_header, neg_hdr) resp = self.parent.open(req) - self.authenticate_server(resp.info()) + if resp.getcode() != 200: + self.authenticate_server(resp.info()) return resp -- cgit