[Checkins] SVN: PluggableAuthService/trunk/ Made the
DomainAuthHelper return the remote address, even it the remote host
Tres Seaver
tseaver at palladion.com
Fri Oct 20 17:27:21 EDT 2006
Log message for revision 70858:
Made the DomainAuthHelper return the remote address, even it the remote host
is not available (http://www.zope.org/Collectors/PAS/49).
Fixed testing bug (FauxRequest needs a 'form' attribute now).
Changed:
U PluggableAuthService/trunk/doc/CHANGES.txt
U PluggableAuthService/trunk/plugins/DomainAuthHelper.py
U PluggableAuthService/trunk/plugins/tests/test_CookieAuthHelper.py
U PluggableAuthService/trunk/plugins/tests/test_DomainAuthHelper.py
U PluggableAuthService/trunk/tests/test_PluggableAuthService.py
-=-
Modified: PluggableAuthService/trunk/doc/CHANGES.txt
===================================================================
--- PluggableAuthService/trunk/doc/CHANGES.txt 2006-10-20 21:19:11 UTC (rev 70857)
+++ PluggableAuthService/trunk/doc/CHANGES.txt 2006-10-20 21:27:21 UTC (rev 70858)
@@ -10,6 +10,9 @@
Bugs Fixed
+ - Made the DomainAuthHelper return the remote address, even it the
+ remote host is not available (http://www.zope.org/Collectors/PAS/49).
+
- Fixed bug in DelegatingMultiPlugin which attempted to validated the
supplied password directly against the user password - updated to use
AuthEncoding.pw_validate to handle encoding issues
Modified: PluggableAuthService/trunk/plugins/DomainAuthHelper.py
===================================================================
--- PluggableAuthService/trunk/plugins/DomainAuthHelper.py 2006-10-20 21:19:11 UTC (rev 70857)
+++ PluggableAuthService/trunk/plugins/DomainAuthHelper.py 2006-10-20 21:27:21 UTC (rev 70858)
@@ -105,11 +105,15 @@
if remote_host:
creds['remote_host'] = request.get('REMOTE_HOST', '')
- try:
- creds['remote_address'] = request.getClientAddr()
- except AttributeError:
- creds['remote_address'] = request.get('REMOTE_ADDR', '')
+ try:
+ remote_address = request.getClientAddr()
+ except AttributeError:
+ remote_address = request.get('REMOTE_ADDR', '')
+ if remote_host or remote_address:
+ creds['remote_host'] = remote_host
+ creds['remote_address'] = remote_address
+
return creds
security.declarePrivate('authenticateCredentials')
Modified: PluggableAuthService/trunk/plugins/tests/test_CookieAuthHelper.py
===================================================================
--- PluggableAuthService/trunk/plugins/tests/test_CookieAuthHelper.py 2006-10-20 21:19:11 UTC (rev 70857)
+++ PluggableAuthService/trunk/plugins/tests/test_CookieAuthHelper.py 2006-10-20 21:27:21 UTC (rev 70858)
@@ -145,7 +145,7 @@
, __ac_password='bar'
, RESPONSE=response
)
- request.form = {'came_from':''}
+ request.form['came_from'] = ''
helper.REQUEST = request
helper.login()
Modified: PluggableAuthService/trunk/plugins/tests/test_DomainAuthHelper.py
===================================================================
--- PluggableAuthService/trunk/plugins/tests/test_DomainAuthHelper.py 2006-10-20 21:19:11 UTC (rev 70857)
+++ PluggableAuthService/trunk/plugins/tests/test_DomainAuthHelper.py 2006-10-20 21:27:21 UTC (rev 70858)
@@ -78,6 +78,24 @@
{'remote_host': 'foo',
'remote_address': 'bam'})
+ def test_extractCredentials_with_getClientAddr_no_REMOTE_HSOT( self ):
+
+ helper = self._makeOne()
+ request = FauxRequestWithClientAddr(CLIENT_ADDR='bar')
+
+ self.assertEqual(helper.extractCredentials(request),
+ {'remote_host': '',
+ 'remote_address': 'bar'})
+
+ def test_extractCredentials_with_REMOTE_ADDR_no_REMOTE_HOST( self ):
+
+ helper = self._makeOne()
+ request = FauxRequest(REMOTE_ADDR='bam')
+
+ self.assertEqual(helper.extractCredentials(request),
+ {'remote_host': '',
+ 'remote_address': 'bam'})
+
def test_extractCredentials_no_getClientAddr_no_REMOTE_ADDR( self ):
helper = self._makeOne()
Modified: PluggableAuthService/trunk/tests/test_PluggableAuthService.py
===================================================================
--- PluggableAuthService/trunk/tests/test_PluggableAuthService.py 2006-10-20 21:19:11 UTC (rev 70857)
+++ PluggableAuthService/trunk/tests/test_PluggableAuthService.py 2006-10-20 21:27:21 UTC (rev 70858)
@@ -170,6 +170,8 @@
class FauxRequest( object ):
+ form = property(lambda self: self)
+
def __init__( self, steps=(), **kw ):
self.steps = steps
More information about the Checkins
mailing list