Package: trac-authopenid
Version: 1.7-1

When using the trac-authopenid plugin to authenticate against a Drupal
OpenID Provider, I get the following Trac error (nonce codes are
obscured):

TypeError: query dict must have one value for each key, not lists of
values.  Query is {'openid.op_endpoint':
u'http://openid.workingdirectory.net/openid/provider', 'openid.sig':
u'cn+nBssfiof37LuzU47H2/bGZTM=', 'openid.ns':
u'http://specs.openid.net/auth/2.0', 'janrain_nonce':
[u'2010-11-05T16:53:24xxxxxxxx', u'2010-11-05T16:53:24xxxxxxxx'],
'openid.return_to':
u'http://ict.ussf2010.org/openidprocess?janrain_nonce=2010-11-05T16%3A53%3A24xxxxxxxx',
'openid.claimed_id':
u'http://openid.workingdirectory.net/user/1/identity', 'openid.mode':
u'id_res', 'openid.sreg.nickname': u'admin', 'openid.response_nonce':
u'2010-11-05T16:53:23ZGUTT', 'openid.signed':
u'op_endpoint,return_to,response_nonce,assoc_handle,identity,claimed_id',
'openid.identity':
u'http://openid.workingdirectory.net/user/1/identity',
'openid.assoc_handle': u'2010-11-05T16:06:22ZYPDX', 'openid.sreg.email':
u'[email protected]'}

The URL that generates the error is:

http://ict.ussf2010.org/openidprocess?janrain_nonce=2010-11-05T16%3A53%3A24xxxxxxxx&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=id_res&openid.op_endpoint=http%3A%2F%2Fopenid.workingdirectory.net%2Fopenid%2Fprovider&openid.identity=http%3A%2F%2Fopenid.workingdirectory.net%2Fuser%2F1%2Fidentity&openid.claimed_id=http%3A%2F%2Fopenid.workingdirectory.net%2Fuser%2F1%2Fidentity&openid.return_to=http%3A%2F%2Fict.ussf2010.org%2Fopenidprocess%3Fjanrain_nonce%3D2010-11-05T16%253A53%253A24xxxxxxxx&openid.response_nonce=2010-11-05T16%3A53%3A23ZGUTT&openid.assoc_handle=2010-11-05T16%3A06%3A22ZYPDX&openid.sreg.nickname=admin&openid.sreg.email=jamie%40mayfirst.org&janrain_nonce=2010-11-05T16%3A53%3A24xxxxxxxx&openid.signed=op_endpoint%2Creturn_to%2Cresponse_nonce%2Cassoc_handle%2Cidentity%2Cclaimed_id&openid.sig=cn%2BnBssfiof37LuzU47H2%2FbGZTM%3D

The problem seems to be caused by the key janrain_nonce being passed
twice.

I think trac-authopenid should detect the duplicate and only use it
once.

jamie


Attachment: signature.asc
Description: Digital signature

Reply via email to