Bug 6276

Summary: BasePIP throws AttributeException
Product: GridShib Reporter: Tom Scavo <trscavo@gmail.com>
Component: GT pluginAssignee: Tom Scavo <trscavo@gmail.com>
Status: RESOLVED FIXED    
Severity: critical CC: gridshib-dev@globus.org
Priority: P3    
Version: 0.6   
Target Milestone: beta   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 6167    

Description From 2008-07-31 04:55:50
The BasePIP throws an AttributeException if the corresponding implementation
fails to collect attributes.  This is incorrect.  Like BasePDP, BasePIP should
log the exception and continue on in almost all cases.  It should only throw an
exception if the authorization framework fails to honor its contract.
------- Comment #1 From 2008-07-31 05:05:27 -------
Here's the patch. BasePIP throws an AttributeException ONLY IF the impl throws
an IllegalArgumentException (which it does if any of the arguments passed to it
by the authz framework are unexpected):

try {
    pipImpl().collectAttributes(peerSubject, context);
} catch (IllegalArgumentException e) {
    throw new AttributeException("Illegal argument", e);
} catch (Exception e) {
    String msg = "PIP attribute collection failed";
    logger.error(msg, e);
}
------- Comment #2 From 2008-07-31 05:18:04 -------
Patch committed to CVS HEAD.  This patch will be distributed with GS4GT v0.6.1.
------- Comment #3 From 2008-07-31 05:19:53 -------
This critical bug is completely resolved.