Handling error in XML document

This commit is contained in:
Roland Hedberg
2013-05-16 21:21:24 +02:00
parent 3875736ea7
commit b5622c228f
4 changed files with 11 additions and 4 deletions

View File

@@ -47,8 +47,6 @@ except ImportError:
# Compatibility with Python <= 2.5 # Compatibility with Python <= 2.5
from cgi import parse_qs from cgi import parse_qs
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)

View File

@@ -526,7 +526,9 @@ class Base(Entity):
logger.debug(">> %s", resp) logger.debug(">> %s", resp)
if isinstance(resp, AuthnResponse): if resp is None:
return None
elif isinstance(resp, AuthnResponse):
self.users.add_information_about_person(resp.session_info()) self.users.add_information_about_person(resp.session_info())
logger.info("--- ADDED person info ----") logger.info("--- ADDED person info ----")
else: else:

View File

@@ -17,6 +17,7 @@ from saml2 import request
from saml2 import soap from saml2 import soap
from saml2 import element_to_extension_element from saml2 import element_to_extension_element
from saml2 import extension_elements_to_elements from saml2 import extension_elements_to_elements
from saml2.saml import NameID from saml2.saml import NameID
from saml2.saml import Issuer from saml2.saml import Issuer
from saml2.saml import NAMEID_FORMAT_ENTITY from saml2.saml import NAMEID_FORMAT_ENTITY
@@ -791,7 +792,12 @@ class Entity(HTTPBase):
logger.debug("XMLSTR: %s" % xmlstr) logger.debug("XMLSTR: %s" % xmlstr)
response = response.loads(xmlstr, False) try:
response = response.loads(xmlstr, False)
except Exception, err:
if "not well-formed" in "%s" % err:
logger.error("Not well-formed XML")
return None
if response: if response:
response = response.verify() response = response.verify()

View File

@@ -311,6 +311,7 @@ class StatusResponse(object):
raise raise
except Exception, excp: except Exception, excp:
logger.exception("EXCEPTION: %s", excp) logger.exception("EXCEPTION: %s", excp)
raise
#print "<", self.response #print "<", self.response