From a98df81417e37a0a239c3ca27621db8f907d6b12 Mon Sep 17 00:00:00 2001 From: haneul Date: Mon, 22 Dec 2008 02:23:26 +0000 Subject: [PATCH] remove unnecesaary files git-svn-id: http://xe-core.googlecode.com/svn/sandbox@5141 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- .../Tests/Auth/OpenID/Association.php | 38 - .../Tests/Auth/OpenID/BigMath.php | 235 -- .../Tests/Auth/OpenID/Consumer.php | 1161 ---------- .../Tests/Auth/OpenID/CryptUtil.php | 55 - .../Tests/Auth/OpenID/DiffieHellman.php | 160 -- .../Tests/Auth/OpenID/Discover.php | 670 ------ .../Tests/Auth/OpenID/HMACSHA1.php | 148 -- .../Tests/Auth/OpenID/KVForm.php | 259 --- .../Tests/Auth/OpenID/MemStore.php | 110 - .../Tests/Auth/OpenID/OpenID_Yadis.php | 224 -- .../Tests/Auth/OpenID/Parse.php | 181 -- .../Tests/Auth/OpenID/Server.php | 1391 ------------ .../Tests/Auth/OpenID/StoreTest.php | 574 ----- .../Tests/Auth/OpenID/TestUtil.php | 28 - .../Tests/Auth/OpenID/TrustRoot.php | 167 -- .../Tests/Auth/OpenID/URINorm.php | 68 - .../Tests/Auth/OpenID/Util.php | 260 --- .../Tests/Auth/OpenID/data/dhexch | 25 - .../Tests/Auth/OpenID/data/dhpriv | 29 - .../Tests/Auth/OpenID/data/hmac.txt | 49 - .../Tests/Auth/OpenID/data/linkparse.txt | 594 ----- .../Tests/Auth/OpenID/data/n2b64 | 650 ------ .../Tests/Auth/OpenID/data/trustroot.txt | 120 - .../Tests/Auth/OpenID/data/urinorm.txt | 79 - .../Tests/Services/Yadis/Discover.php | 171 -- .../Tests/Services/Yadis/DiscoverData.php | 148 -- .../Tests/Services/Yadis/ParseHTML.php | 88 - .../Tests/Services/Yadis/TestUtil.php | 28 - .../Tests/Services/Yadis/XRDS.php | 241 -- .../Tests/Services/Yadis/XRI.php | 141 -- .../Tests/Services/Yadis/Yadis.php | 91 - .../Tests/Services/Yadis/data/README | 12 - .../Tests/Services/Yadis/data/accept.txt | 118 - .../Services/Yadis/data/brian.multi.xrds | 38 - .../Services/Yadis/data/brian.multi_uri.xrds | 16 - .../Tests/Services/Yadis/data/brian.xrds | 16 - .../Services/Yadis/data/brian_priority.xrds | 22 - .../Yadis/data/delegated-20060809-r1.xrds | 34 - .../Yadis/data/delegated-20060809-r2.xrds | 34 - .../Yadis/data/delegated-20060809.xrds | 34 - .../Services/Yadis/data/example-xrds.xml | 14 - .../Tests/Services/Yadis/data/manifest.txt | 30 - .../Tests/Services/Yadis/data/no-xrd.xml | 7 - .../Tests/Services/Yadis/data/not-xrds.xml | 2 - .../Tests/Services/Yadis/data/pip.xrds | 22 - .../Services/Yadis/data/prefixsometimes.xrds | 34 - .../Tests/Services/Yadis/data/ref.xrds | 109 - .../Services/Yadis/data/sometimesprefix.xrds | 34 - .../Tests/Services/Yadis/data/spoof1.xrds | 25 - .../Tests/Services/Yadis/data/spoof2.xrds | 25 - .../Tests/Services/Yadis/data/spoof3.xrds | 37 - .../Services/Yadis/data/test1-discover.txt | 137 -- .../Services/Yadis/data/test1-parsehtml.txt | 133 -- .../Tests/Services/Yadis/data/test1-xrd.xml | 39 - .../Services/Yadis/data/uri_priority.xrds | 16 - .../php-openid-1.2.3/Tests/TestDriver.php | 189 -- .../php-openid-1.2.3/admin/adminutil.php | 30 - .../php-openid-1.2.3/admin/brace_style.pl | 81 - .../member/php-openid-1.2.3/admin/checkimport | 4 - .../php-openid-1.2.3/admin/checkimports | 2 - .../php-openid-1.2.3/admin/darcs-ignore | 3 - .../member/php-openid-1.2.3/admin/docblocks | 15 - .../php-openid-1.2.3/admin/docblocks.pl | 26 - .../member/php-openid-1.2.3/admin/findglobals | 5 - modules/member/php-openid-1.2.3/admin/findphp | 8 - .../member/php-openid-1.2.3/admin/fixperms | 13 - .../php-openid-1.2.3/admin/library-name | 1 - .../php-openid-1.2.3/admin/longlines.pl | 46 - .../member/php-openid-1.2.3/admin/makedoc.sh | 5 - modules/member/php-openid-1.2.3/admin/mathlib | 18 - .../member/php-openid-1.2.3/admin/nobadbraces | 4 - .../member/php-openid-1.2.3/admin/nobadcase | 14 - .../member/php-openid-1.2.3/admin/nolonglines | 16 - modules/member/php-openid-1.2.3/admin/notabs | 16 - .../member/php-openid-1.2.3/admin/open_tag | 17 - .../php-openid-1.2.3/admin/otb_test.php | 20 - .../member/php-openid-1.2.3/admin/package.xml | 24 - .../php-openid-1.2.3/admin/package2.xml | 74 - .../php-openid-1.2.3/admin/packagexml.py | 155 -- .../php-openid-1.2.3/admin/phpaliases.py | 119 - .../php-openid-1.2.3/admin/prepare-release | 12 - .../member/php-openid-1.2.3/admin/runtests | 64 - .../php-openid-1.2.3/admin/texttest.php | 173 -- .../admin/tutorials/OpenID/OpenID.pkg | 81 - .../member/php-openid-1.2.3/admin/webtest.php | 12 - .../php-openid-1.2.3/admin/xmlconfig.py | 55 - .../doc/OpenID/Auth_OpenID_AlreadySigned.html | 68 - .../doc/OpenID/Auth_OpenID_Association.html | 210 -- .../doc/OpenID/Auth_OpenID_AuthRequest.html | 187 -- .../OpenID/Auth_OpenID_CancelResponse.html | 169 -- .../doc/OpenID/Auth_OpenID_Consumer.html | 216 -- .../OpenID/Auth_OpenID_ConsumerResponse.html | 153 -- .../Auth_OpenID_DatabaseConnection.html | 337 --- .../doc/OpenID/Auth_OpenID_Decoder.html | 160 -- ...h_OpenID_DiffieHellmanConsumerSession.html | 217 -- ...uth_OpenID_DiffieHellmanServerSession.html | 226 -- .../doc/OpenID/Auth_OpenID_DumbStore.html | 419 ---- .../doc/OpenID/Auth_OpenID_Encoder.html | 200 -- .../doc/OpenID/Auth_OpenID_EncodingError.html | 129 -- .../OpenID/Auth_OpenID_FailureResponse.html | 172 -- .../doc/OpenID/Auth_OpenID_FileStore.html | 528 ----- .../Auth_OpenID_MalformedReturnURL.html | 118 - .../Auth_OpenID_MalformedTrustRoot.html | 116 - .../doc/OpenID/Auth_OpenID_MySQLStore.html | 128 -- .../doc/OpenID/Auth_OpenID_OpenIDStore.html | 550 ----- .../Auth_OpenID_PlainTextConsumerSession.html | 186 -- .../Auth_OpenID_PlainTextServerSession.html | 192 -- .../OpenID/Auth_OpenID_PostgreSQLStore.html | 128 -- .../doc/OpenID/Auth_OpenID_SQLStore.html | 720 ------ .../doc/OpenID/Auth_OpenID_SQLiteStore.html | 175 -- .../doc/OpenID/Auth_OpenID_Server.html | 202 -- .../doc/OpenID/Auth_OpenID_ServerError.html | 255 --- .../doc/OpenID/Auth_OpenID_ServerRequest.html | 101 - .../Auth_OpenID_SetupNeededResponse.html | 172 -- .../doc/OpenID/Auth_OpenID_Signatory.html | 381 ---- .../OpenID/Auth_OpenID_SigningEncoder.html | 179 -- .../OpenID/Auth_OpenID_SuccessResponse.html | 201 -- .../Auth_OpenID_UntrustedReturnURL.html | 150 -- .../doc/OpenID/Auth_OpenID_WebResponse.html | 189 -- .../_Auth---OpenID---Association.php.html | 67 - .../OpenID/_Auth---OpenID---Consumer.php.html | 382 ---- ...uth---OpenID---DatabaseConnection.php.html | 66 - .../_Auth---OpenID---DumbStore.php.html | 109 - .../_Auth---OpenID---FileStore.php.html | 123 - .../_Auth---OpenID---Interface.php.html | 67 - .../_Auth---OpenID---MySQLStore.php.html | 89 - .../_Auth---OpenID---PostgreSQLStore.php.html | 89 - .../OpenID/_Auth---OpenID---SQLStore.php.html | 96 - .../_Auth---OpenID---SQLiteStore.php.html | 89 - .../OpenID/_Auth---OpenID---Server.php.html | 354 --- .../_Auth---OpenID---ServerRequest.php.html | 99 - .../doc/OpenID/_Auth---OpenID.php.html | 275 --- .../doc/OpenID/tutorial_OpenID.pkg.html | 52 - .../Auth_OpenID_ServiceEndpointLoader.html | 186 -- .../doc/Yadis/Services_Yadis_Discovery.html | 175 -- .../doc/Yadis/Services_Yadis_Manager.html | 99 - .../Yadis/Services_Yadis_ManagerLoader.html | 260 --- .../doc/Yadis/Services_Yadis_PHPSession.html | 203 -- .../doc/Yadis/Services_Yadis_Service.html | 225 -- .../Yadis/Services_Yadis_SessionLoader.html | 333 --- .../doc/Yadis/Services_Yadis_XMLParser.html | 374 --- .../doc/Yadis/Services_Yadis_XRDS.html | 184 -- .../doc/Yadis/Services_Yadis_Yadis.html | 258 --- .../doc/Yadis/Services_Yadis_dom.html | 303 --- .../doc/Yadis/Services_Yadis_domxml.html | 303 --- .../_Services---Yadis---Manager.php.html | 101 - .../Yadis/_Services---Yadis---XML.php.html | 160 -- .../Yadis/_Services---Yadis---XRDS.php.html | 200 -- .../Yadis/_Services---Yadis---Yadis.php.html | 139 -- .../doc/classtrees_OpenID.html | 104 - .../doc/classtrees_Yadis.html | 56 - .../php-openid-1.2.3/doc/elementindex.html | 1998 ----------------- .../doc/elementindex_OpenID.html | 1473 ------------ .../doc/elementindex_Yadis.html | 680 ------ .../member/php-openid-1.2.3/doc/errors.html | 35 - .../member/php-openid-1.2.3/doc/index.html | 24 - .../php-openid-1.2.3/doc/li_OpenID.html | 90 - .../member/php-openid-1.2.3/doc/li_Yadis.html | 53 - .../php-openid-1.2.3/doc/media/banner.css | 32 - .../php-openid-1.2.3/doc/media/stylesheet.css | 142 -- .../member/php-openid-1.2.3/doc/packages.html | 34 - .../member/php-openid-1.2.3/examples/README | 122 - .../examples/consumer/common.php | 41 - .../examples/consumer/finish_auth.php | 38 - .../examples/consumer/index.php | 59 - .../examples/consumer/try_auth.php | 48 - .../php-openid-1.2.3/examples/detect.php | 496 ---- .../examples/server/index.php | 5 - .../examples/server/lib/actions.php | 169 -- .../examples/server/lib/common.php | 63 - .../examples/server/lib/render.php | 112 - .../examples/server/lib/render/about.php | 58 - .../examples/server/lib/render/login.php | 65 - .../examples/server/lib/render/sites.php | 83 - .../examples/server/lib/render/trust.php | 29 - .../examples/server/lib/session.php | 205 -- .../examples/server/openid-server.css | 74 - .../examples/server/server.php | 45 - .../examples/server/setup.php | 690 ------ 179 files changed, 30590 deletions(-) delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Association.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/BigMath.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Consumer.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/CryptUtil.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/DiffieHellman.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Discover.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/HMACSHA1.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/KVForm.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/MemStore.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/OpenID_Yadis.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Parse.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Server.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/StoreTest.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/TestUtil.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/TrustRoot.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/URINorm.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Util.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/dhexch delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/dhpriv delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/hmac.txt delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/linkparse.txt delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/n2b64 delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/trustroot.txt delete mode 100644 modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/urinorm.txt delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/Discover.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/DiscoverData.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/ParseHTML.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/TestUtil.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/XRDS.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/XRI.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/Yadis.php delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/README delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/accept.txt delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.multi.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.multi_uri.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian_priority.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809-r1.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809-r2.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/example-xrds.xml delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/manifest.txt delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/no-xrd.xml delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/not-xrds.xml delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/pip.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/prefixsometimes.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/ref.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/sometimesprefix.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof1.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof2.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof3.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-discover.txt delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-parsehtml.txt delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-xrd.xml delete mode 100644 modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/uri_priority.xrds delete mode 100644 modules/member/php-openid-1.2.3/Tests/TestDriver.php delete mode 100644 modules/member/php-openid-1.2.3/admin/adminutil.php delete mode 100644 modules/member/php-openid-1.2.3/admin/brace_style.pl delete mode 100644 modules/member/php-openid-1.2.3/admin/checkimport delete mode 100644 modules/member/php-openid-1.2.3/admin/checkimports delete mode 100644 modules/member/php-openid-1.2.3/admin/darcs-ignore delete mode 100644 modules/member/php-openid-1.2.3/admin/docblocks delete mode 100644 modules/member/php-openid-1.2.3/admin/docblocks.pl delete mode 100644 modules/member/php-openid-1.2.3/admin/findglobals delete mode 100644 modules/member/php-openid-1.2.3/admin/findphp delete mode 100644 modules/member/php-openid-1.2.3/admin/fixperms delete mode 100644 modules/member/php-openid-1.2.3/admin/library-name delete mode 100644 modules/member/php-openid-1.2.3/admin/longlines.pl delete mode 100644 modules/member/php-openid-1.2.3/admin/makedoc.sh delete mode 100644 modules/member/php-openid-1.2.3/admin/mathlib delete mode 100644 modules/member/php-openid-1.2.3/admin/nobadbraces delete mode 100644 modules/member/php-openid-1.2.3/admin/nobadcase delete mode 100644 modules/member/php-openid-1.2.3/admin/nolonglines delete mode 100644 modules/member/php-openid-1.2.3/admin/notabs delete mode 100644 modules/member/php-openid-1.2.3/admin/open_tag delete mode 100644 modules/member/php-openid-1.2.3/admin/otb_test.php delete mode 100644 modules/member/php-openid-1.2.3/admin/package.xml delete mode 100644 modules/member/php-openid-1.2.3/admin/package2.xml delete mode 100644 modules/member/php-openid-1.2.3/admin/packagexml.py delete mode 100644 modules/member/php-openid-1.2.3/admin/phpaliases.py delete mode 100644 modules/member/php-openid-1.2.3/admin/prepare-release delete mode 100644 modules/member/php-openid-1.2.3/admin/runtests delete mode 100644 modules/member/php-openid-1.2.3/admin/texttest.php delete mode 100644 modules/member/php-openid-1.2.3/admin/tutorials/OpenID/OpenID.pkg delete mode 100644 modules/member/php-openid-1.2.3/admin/webtest.php delete mode 100644 modules/member/php-openid-1.2.3/admin/xmlconfig.py delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_AlreadySigned.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Association.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_AuthRequest.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_CancelResponse.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Consumer.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ConsumerResponse.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DatabaseConnection.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Decoder.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DiffieHellmanConsumerSession.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DiffieHellmanServerSession.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DumbStore.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Encoder.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_EncodingError.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_FailureResponse.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_FileStore.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MalformedReturnURL.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MalformedTrustRoot.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MySQLStore.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_OpenIDStore.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PlainTextConsumerSession.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PlainTextServerSession.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PostgreSQLStore.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SQLStore.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SQLiteStore.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Server.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ServerError.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ServerRequest.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SetupNeededResponse.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Signatory.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SigningEncoder.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SuccessResponse.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_UntrustedReturnURL.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_WebResponse.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Association.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Consumer.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---DatabaseConnection.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---DumbStore.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---FileStore.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Interface.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---MySQLStore.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---PostgreSQLStore.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---SQLStore.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---SQLiteStore.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Server.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---ServerRequest.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/OpenID/tutorial_OpenID.pkg.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Auth_OpenID_ServiceEndpointLoader.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Discovery.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Manager.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_ManagerLoader.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_PHPSession.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Service.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_SessionLoader.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_XMLParser.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_XRDS.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Yadis.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_dom.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_domxml.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---Manager.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---XML.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---XRDS.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---Yadis.php.html delete mode 100644 modules/member/php-openid-1.2.3/doc/classtrees_OpenID.html delete mode 100644 modules/member/php-openid-1.2.3/doc/classtrees_Yadis.html delete mode 100644 modules/member/php-openid-1.2.3/doc/elementindex.html delete mode 100644 modules/member/php-openid-1.2.3/doc/elementindex_OpenID.html delete mode 100644 modules/member/php-openid-1.2.3/doc/elementindex_Yadis.html delete mode 100644 modules/member/php-openid-1.2.3/doc/errors.html delete mode 100644 modules/member/php-openid-1.2.3/doc/index.html delete mode 100644 modules/member/php-openid-1.2.3/doc/li_OpenID.html delete mode 100644 modules/member/php-openid-1.2.3/doc/li_Yadis.html delete mode 100644 modules/member/php-openid-1.2.3/doc/media/banner.css delete mode 100644 modules/member/php-openid-1.2.3/doc/media/stylesheet.css delete mode 100644 modules/member/php-openid-1.2.3/doc/packages.html delete mode 100644 modules/member/php-openid-1.2.3/examples/README delete mode 100644 modules/member/php-openid-1.2.3/examples/consumer/common.php delete mode 100644 modules/member/php-openid-1.2.3/examples/consumer/finish_auth.php delete mode 100644 modules/member/php-openid-1.2.3/examples/consumer/index.php delete mode 100644 modules/member/php-openid-1.2.3/examples/consumer/try_auth.php delete mode 100644 modules/member/php-openid-1.2.3/examples/detect.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/index.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/lib/actions.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/lib/common.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/lib/render.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/lib/render/about.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/lib/render/login.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/lib/render/sites.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/lib/render/trust.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/lib/session.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/openid-server.css delete mode 100644 modules/member/php-openid-1.2.3/examples/server/server.php delete mode 100644 modules/member/php-openid-1.2.3/examples/server/setup.php diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Association.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Association.php deleted file mode 100644 index fcdda0da6..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Association.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'Auth/OpenID/Association.php'; - -class Tests_Auth_OpenID_Association extends PHPUnit_TestCase { - function test_me() - { - $issued = time(); - $lifetime = 600; - $assoc = new Auth_OpenID_Association('handle', 'secret', $issued, - $lifetime, 'HMAC-SHA1'); - $s = $assoc->serialize(); - $assoc2 = Auth_OpenID_Association::deserialize( - 'Auth_OpenID_Association', $s); - - if ($assoc2 === null) { - $this->fail('deserialize returned null'); - } else { - $this->assertTrue($assoc2->equal($assoc)); - } - } -} - -?> diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/BigMath.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/BigMath.php deleted file mode 100644 index a5dbac21c..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/BigMath.php +++ /dev/null @@ -1,235 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'Auth/OpenID/BigMath.php'; -require_once 'Tests/Auth/OpenID/TestUtil.php'; - -class Tests_Auth_OpenID_BinLongConvertRnd extends PHPUnit_TestCase { - var $lib; - var $max; - - function Tests_Auth_OpenID_BinLongConvertRnd(&$lib, $max) - { - $this->lib =& $lib; - $this->max = $max; - } - - function runTest() - { - $n = $this->lib->init(0); - foreach (range(0, 9) as $i) { - $rnd = $this->lib->rand($this->max); - $n = $this->lib->add($n, $rnd); - } - $s = $this->lib->longToBinary($n); - $this->assertTrue(is_string($s)); - $n_prime = $this->lib->binaryToLong($s); - $this->assertEquals($this->lib->cmp($n, $n_prime), 0); - } -} - -class Tests_Auth_OpenID_BinLongConvert extends PHPUnit_TestCase { - var $lib; - var $bin; - var $lng; - - function Tests_Auth_OpenID_BinLongConvert(&$lib, $bin, $lng) - { - $this->lib =& $lib; - $this->bin = $bin; - $this->lng = $lng; - } - - function runTest() - { - $n_prime = $this->lib->binaryToLong($this->bin); - $s_prime = $this->lib->longToBinary($this->lng); - $this->assertEquals($this->lib->cmp($this->lng, $n_prime), 0); - $this->assertTrue($this->bin == $s_prime); - } -} - -class Tests_Auth_OpenID_Base64ToLong extends PHPUnit_TestCase { - var $num; - var $b64; - var $lib; - - function Tests_Auth_OpenID_Base64ToLong(&$lib, $b64, $num) - { - $this->lib = $lib; - $this->b64 = $b64; - $this->num = $num; - } - - function runTest() - { - $actual = $this->lib->base64ToLong($this->b64); - $this->assertTrue($this->lib->cmp($this->num, $actual) == 0); - } -} - -class Tests_Auth_OpenID_LongToBase64 extends Tests_Auth_OpenID_Base64ToLong { - function Tests_Auth_OpenID_LongToBase64(&$lib, $b64, $num) - { - $this->lib = $lib; - $this->b64 = $b64; - $this->num = $num; - } - - function runTest() - { - $actual = $this->lib->longToBase64($this->num); - $this->assertEquals($this->b64, $actual); - } -} - -class Tests_Auth_OpenID_Rand extends PHPUnit_TestCase { - function Tests_Auth_OpenID_Rand(&$lib) - { - $this->lib =& $lib; - } - - function runTest() - { - $stop = $this->lib->pow(2, 128); - $a = $this->lib->rand($stop); - $b = $this->lib->rand($stop); - - $this->assertFalse($this->lib->cmp($b, $a) == 0, "Same: $a $b"); - - $n = $this->lib->init(Tests_Auth_OpenID_maxint()); - $n = $this->lib->add($n, 1); - - // Make sure that we can generate random numbers that are - // larger than platform int size - $result = $this->lib->rand($n); - - // What can we say about the result? - } -} - -/** - * Computes the maximum integer value for this PHP installation. - * - * @return int $max_int_value The maximum integer value for this - * PHP installation - */ -function Tests_Auth_OpenID_maxint() -{ - /* assumes largest integer is of form 2^n - 1 */ - $to_test = pow(2, 16); - while (1) { - $last = $to_test; - $to_test = 2 * $to_test; - if (($to_test < $last) || (!is_int($to_test))) { - return($last + ($last - 1)); - } - } -} - - -class Tests_Auth_OpenID_BigMath extends PHPUnit_TestSuite { - function _parseBase64Data() - { - $lines = Tests_Auth_OpenID_readlines('n2b64'); - - $data = array(); - foreach ($lines as $line) { - $line = trim($line); - if (!$line) { - continue; - } - list($b64, $ascii) = explode(' ', $line); - $data[$b64] = $ascii; - } - return $data; - } - - function _addB64Tests() - { - $lib =& Auth_OpenID_getMathLib(); - $count = defined('Tests_Auth_OpenID_thorough') ? -1 : 2; - $data = $this->_parseBase64Data(); - foreach ($data as $b64 => $num_s) { - // Only test the first few unless thorough is defined - if (strlen($num_s) > 5) { - if ($count == 0) { - break; - } else { - $count -= 1; - } - } - $num = $lib->init($num_s); - $test = new Tests_Auth_OpenID_Base64ToLong($lib, $b64, $num); - $test->setName("B64->Long $num_s"); - $this->addTest($test); - - $test = new Tests_Auth_OpenID_LongToBase64($lib, $b64, $num); - $test->setName("Long->B64 $num_s"); - $this->addTest($test); - } - } - - function _addBinLongTests() - { - $lib =& Auth_OpenID_getMathLib(); - $max = Tests_Auth_OpenID_maxint(); - $upper = defined('Tests_Auth_OpenID_thorough') ? 499 : 3; - - foreach (range(0, $upper) as $iteration) { - $test = new Tests_Auth_OpenID_BinLongConvertRnd($lib, $max); - $test->setName("BinLongConvertRnd " . strval($iteration)); - $this->addTest($test); - } - - $cases = array( - array("\x00", 0), - array("\x01", 1), - array("\x7F", 127), - array("\x00\x80", 128), - array("\x00\x81", 129), - array("\x00\xFF", 255), - array("\x00\x80\x00", 32768), - array("OpenID is cool", - "1611215304203901150134421257416556") - ); - - foreach ($cases as $case) { - list($bin, $lng_m) = $case; - $lng = $lib->init($lng_m); - $test = new Tests_Auth_OpenID_BinLongConvert($lib, $bin, $lng); - $test->setName('BinLongConvert ' . bin2hex($bin)); - $this->addTest($test); - } - - } - - function Tests_Auth_OpenID_BigMath($name) - { - $this->setName($name); - - if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) { - $this->addTestSuite('Tests_Auth_OpenID_BigInt'); - $this->_addB64Tests(); - $this->_addBinLongTests(); - $test = new Tests_Auth_OpenID_Rand(Auth_OpenID_getMathLib()); - $test->setName('Big number rand'); - $this->addTest($test); - } - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Consumer.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Consumer.php deleted file mode 100644 index f9e2772d5..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Consumer.php +++ /dev/null @@ -1,1161 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -session_start(); - -require_once 'Auth/OpenID/CryptUtil.php'; -require_once 'Services/Yadis/HTTPFetcher.php'; -require_once 'Auth/OpenID/DiffieHellman.php'; -require_once 'Auth/OpenID/FileStore.php'; -require_once 'Auth/OpenID/KVForm.php'; -require_once 'Auth/OpenID/Consumer.php'; -require_once 'Auth/OpenID/Server.php'; -require_once 'Tests/Auth/OpenID/MemStore.php'; -require_once 'PHPUnit.php'; - -class Auth_OpenID_TestConsumer extends Auth_OpenID_GenericConsumer { - /** - * Use a small (insecure) modulus for this test so that it runs quickly - */ - function _createDiffieHellman() - { - return new Auth_OpenID_DiffieHellman('1235514290909'); - } -} - -$_Auth_OpenID_assocs = array( - array('another 20-byte key.', 'Snarky'), - array(str_repeat("\x00", 20), 'Zeros'), - ); - -function Auth_OpenID_parse($qs) -{ - $result = array(); - $parts = explode("&", $qs); - foreach ($parts as $pair) { - list($key, $value) = explode("=", $pair, 2); - assert(!array_key_exists($key, $result)); - $result[$key] = urldecode($value); - } - return $result; -} - -function Auth_OpenID_associate($qs, $assoc_secret, $assoc_handle) -{ - $query_data = Auth_OpenID_parse($qs); - - assert((count($query_data) == 6) || (count($query_data) == 4)); - assert($query_data['openid.mode'] == 'associate'); - assert($query_data['openid.assoc_type'] == 'HMAC-SHA1'); - assert($query_data['openid.session_type'] == 'DH-SHA1'); - - $reply_dict = array( - 'assoc_type' => 'HMAC-SHA1', - 'assoc_handle' => $assoc_handle, - 'expires_in' => '600', - ); - - $dh_args = Auth_OpenID_DiffieHellman:: - serverAssociate($query_data, $assoc_secret); - - $reply_dict = array_merge($reply_dict, $dh_args); - - return Auth_OpenID_KVForm::fromArray($reply_dict); -} - -class Auth_OpenID_TestFetcher extends Services_Yadis_HTTPFetcher { - function Auth_OpenID_TestFetcher($user_url, $user_page, - $assoc_secret, $assoc_handle) - { - $this->get_responses = array($user_url => - new Services_Yadis_HTTPResponse($user_url, - 200, - array(), - $user_page)); - $this->assoc_secret = $assoc_secret; - $this->assoc_handle = $assoc_handle; - $this->num_assocs = 0; - } - - function response($url, $body) - { - if ($body === null) { - return new Services_Yadis_HTTPResponse($url, 404, array(), 'Not found'); - } else { - return new Services_Yadis_HTTPResponse($url, 200, array(), $body); - } - } - - function get($url) - { - if (array_key_exists($url, $this->get_responses)) { - return $this->get_responses[$url]; - } else { - return $this->response($url, null); - } - } - - function _checkAuth($url, $body) - { - $query_data = Auth_OpenID_parse($body); - $expected = array( - 'openid.mode' => 'check_authentication', - 'openid.signed' => 'assoc_handle,sig,signed', - 'openid.sig' => 'fake', - 'openid.assoc_handle' => $this->assoc_handle, - ); - - if ($query_data == $expected) { - return new Services_Yadis_HTTPResponse($url, 200, array(), "is_valid:true\n"); - } else { - return new Services_Yadis_HTTPResponse($url, 400, array(), - "error:bad check_authentication query\n"); - } - } - - function post($url, $body) - { - if (strpos($body, 'openid.mode=associate') !== false) { - $response = Auth_OpenID_associate($body, $this->assoc_secret, - $this->assoc_handle); - $this->num_assocs++; - return $this->response($url, $response); - } elseif (strpos($body, 'openid.mode=check_authentication') !== false) { - return $this->_checkAuth($url, $body); - } else { - return $this->response($url, null); - } - } -} - -$_Auth_OpenID_user_page_pat = " - - A user page - %s - - - blah blah - -"; - -$_Auth_OpenID_server_url = "http://server.example.com/"; -$_Auth_OpenID_consumer_url = "http://consumer.example.com/"; - -class Tests_Auth_OpenID_Consumer extends PHPUnit_TestCase { - - function _run(&$consumer, $user_url, $mode, $delegate_url, - &$fetcher, &$store, $immediate) - { - global $_Auth_OpenID_consumer_url, - $_Auth_OpenID_server_url; - - $endpoint = new Auth_OpenID_ServiceEndpoint(); - $endpoint->identity_url = $user_url; - $endpoint->server_url = $_Auth_OpenID_server_url; - $endpoint->delegate = $delegate_url; - - $result = $consumer->begin($endpoint); - - $return_to = $_Auth_OpenID_consumer_url; - $trust_root = $_Auth_OpenID_consumer_url; - $redirect_url = $result->redirectURL($trust_root, $return_to, - $immediate); - - $parsed = parse_url($redirect_url); - $qs = $parsed['query']; - $q = Auth_OpenID_parse($qs); - $new_return_to = $q['openid.return_to']; - unset($q['openid.return_to']); - - $expected = array( - 'openid.mode' => $mode, - 'openid.identity' => $delegate_url, - 'openid.trust_root' => $trust_root - ); - - if ($consumer->_use_assocs) { - $expected['openid.assoc_handle'] = $fetcher->assoc_handle; - } - - $this->assertEquals($expected, $q); - $this->assertEquals(0, strpos($redirect_url, $_Auth_OpenID_server_url)); - $this->assertEquals(0, strpos($new_return_to, $return_to)); - - $query = array( - 'nonce' => $result->return_to_args['nonce'], - 'openid.mode'=> 'id_res', - 'openid.return_to'=> $new_return_to, - 'openid.identity'=> $delegate_url, - 'openid.assoc_handle'=> $fetcher->assoc_handle, - ); - - if ($consumer->_use_assocs) { - $assoc = $store->getAssociation($_Auth_OpenID_server_url, - $fetcher->assoc_handle); - - $assoc->addSignature(array('mode', 'return_to', 'identity'), - $query); - } else { - $query['openid.signed'] = - 'assoc_handle,sig,signed'; - $query['openid.assoc_handle'] = $fetcher->assoc_handle; - $query['openid.sig'] = 'fake'; - } - - $result = $consumer->complete($query, $result->endpoint); - - $this->assertEquals($result->status, 'success'); - $this->assertEquals($result->identity_url, $user_url); - } - - function _test_success($user_url, $delegate_url, $links, $immediate = false) - { - global $_Auth_OpenID_filestore_base_dir, - $_Auth_OpenID_server_url, - $_Auth_OpenID_user_page_pat, - $_Auth_OpenID_assocs; - - $store = new Tests_Auth_OpenID_MemStore(); - - if ($immediate) { - $mode = 'checkid_immediate'; - } else { - $mode = 'checkid_setup'; - } - - $user_page = sprintf($_Auth_OpenID_user_page_pat, $links); - $fetcher = new Auth_OpenID_TestFetcher($user_url, $user_page, - $_Auth_OpenID_assocs[0][0], - $_Auth_OpenID_assocs[0][1]); - - $consumer = new Auth_OpenID_TestConsumer($store); - $consumer->fetcher =& $fetcher; - - $expected_num_assocs = 0; - $this->assertEquals($expected_num_assocs, $fetcher->num_assocs); - $this->_run($consumer, $user_url, $mode, $delegate_url, - $fetcher, $store, $immediate); - - if ($consumer->_use_assocs) { - $expected_num_assocs += 1; - } - - $this->assertEquals($expected_num_assocs, $fetcher->num_assocs); - - // Test that doing it again uses the existing association - $this->_run($consumer, $user_url, $mode, $delegate_url, - $fetcher, $store, $immediate); - - $this->assertEquals($expected_num_assocs, $fetcher->num_assocs); - - // Another association is created if we remove the existing one - $store->removeAssociation($_Auth_OpenID_server_url, - $fetcher->assoc_handle); - - $this->_run($consumer, $user_url, $mode, $delegate_url, - $fetcher, $store, $immediate); - - if ($consumer->_use_assocs) { - $expected_num_assocs += 1; - } - - $this->assertEquals($expected_num_assocs, $fetcher->num_assocs); - - // Test that doing it again uses the existing association - $this->_run($consumer, $user_url, $mode, $delegate_url, - $fetcher, $store, $immediate); - - $this->assertEquals($expected_num_assocs, $fetcher->num_assocs); - } - - function test_success() - { - global $_Auth_OpenID_server_url; - - $user_url = 'http://www.example.com/user.html'; - $links = sprintf('', - $_Auth_OpenID_server_url); - - $delegate_url = 'http://consumer.example.com/user'; - $delegate_links = sprintf(''. - '', - $_Auth_OpenID_server_url, $delegate_url); - - $this->_test_success($user_url, $user_url, $links); - $this->_test_success($user_url, $user_url, $links, true); - $this->_test_success($user_url, $delegate_url, $delegate_links); - $this->_test_success($user_url, $delegate_url, $delegate_links, true); - } -} - -class _TestIdRes extends PHPUnit_TestCase { - var $consumer_class = 'Auth_OpenID_GenericConsumer'; - - function setUp() - { - $this->store = new Tests_Auth_OpenID_MemStore(); - $cl = $this->consumer_class; - $this->consumer = new $cl($this->store); - $this->return_to = "nonny"; - $this->endpoint = new Auth_OpenID_ServiceEndpoint(); - - $this->server_id = "sirod"; - $this->server_url = "serlie"; - $this->consumer_id = "consu"; - - $this->endpoint->identity_url = $this->consumer_id; - $this->endpoint->server_url = $this->server_url; - $this->endpoint->delegate = $this->server_id; - } -} - -class Tests_Auth_OpenID_Consumer_TestSetupNeeded extends _TestIdRes { - function test_setupNeeded() - { - $setup_url = "http://unittest/setup-here"; - $query = array( - 'openid.mode' => 'id_res', - 'openid.user_setup_url' => $setup_url); - $ret = $this->consumer->_doIdRes($query, $this->endpoint); - $this->assertEquals($ret->status, Auth_OpenID_SETUP_NEEDED); - $this->assertEquals($ret->setup_url, $setup_url); - } -} - -define('E_CHECK_AUTH_HAPPENED', 'checkauth occurred'); -define('E_MOCK_FETCHER_EXCEPTION', 'mock fetcher exception'); -define('E_ASSERTION_ERROR', 'assertion error'); - -class _CheckAuthDetectingConsumer extends Auth_OpenID_GenericConsumer { - function _checkAuth($query, $server_url) - { - __raiseError(E_CHECK_AUTH_HAPPENED); - } -} - -class Tests_Auth_OpenID_Consumer_CheckNonceTest extends _TestIdRes { - function setUp() - { - parent::setUp(); - $this->nonce = "t3stn0nc3"; - $this->store->storeNonce($this->nonce); - } - - function test_goodNonce() - { - $this->return_to = sprintf('http://rt.unittest/?nonce=%s', - $this->nonce); - $this->response = new Auth_OpenID_SuccessResponse($this->endpoint, - array('openid.return_to' => $this->return_to)); - - $ret = $this->consumer->_checkNonce($this->response, $this->nonce); - $this->assertEquals($ret->status, Auth_OpenID_SUCCESS); - $this->assertEquals($ret->identity_url, $this->consumer_id); - } - - function test_badNonce() - { - // remove the nonce from the store - $this->store->useNonce($this->nonce); - $this->return_to = sprintf('http://rt.unittest/?nonce=%s', - $this->nonce); - $this->response = new Auth_OpenID_SuccessResponse($this->endpoint, - array('openid.return_to' => $this->return_to)); - $ret = $this->consumer->_checkNonce($this->response, $this->nonce); - $this->assertEquals($ret->status, Auth_OpenID_FAILURE); - $this->assertEquals($ret->identity_url, $this->consumer_id); - $this->assertTrue(strpos($ret->message, 'Nonce missing from store') === 0); - } - - function test_tamperedNonce() - { - $this->return_to = sprintf('http://rt.unittest/?nonce=HACKED-%s', - $this->nonce); - $this->response = new Auth_OpenID_SuccessResponse($this->endpoint, - array('openid.return_to' => $this->return_to)); - $ret = $this->consumer->_checkNonce($this->response, $this->nonce); - $this->assertEquals($ret->status, Auth_OpenID_FAILURE); - $this->assertEquals($ret->identity_url, $this->consumer_id); - $this->assertTrue(strpos($ret->message, 'Nonce mismatch') === 0); - } - - function test_missingNonce() - { - // no nonce parameter on the return_to - $this->response = new Auth_OpenID_SuccessResponse($this->endpoint, - array('openid.return_to' => $this->return_to)); - $ret = $this->consumer->_checkNonce($this->response, $this->nonce); - $this->assertEquals($ret->status, Auth_OpenID_FAILURE); - $this->assertEquals($ret->identity_url, $this->consumer_id); - $this->assertTrue(strpos($ret->message, - 'Nonce missing from return_to') === 0); - } -} - -class Tests_Auth_OpenID_Consumer_TestCheckAuthTriggered extends _TestIdRes { - var $consumer_class = '_CheckAuthDetectingConsumer'; - - function _doIdRes($query) - { - return $this->consumer->_doIdRes($query, $this->endpoint); - } - - function test_checkAuthTriggered() - { - $query = array('openid.return_to' => $this->return_to, - 'openid.identity' => $this->server_id, - 'openid.assoc_handle' =>'not_found'); - - $result = $this->_doIdRes($query); - $error = __getError(); - - if ($error === null) { - $this->fail('_checkAuth did not happen.'); - } - } - - function test_checkAuthTriggeredWithAssoc() - { - // Store an association for this server that does not match - // the handle that is in the query - $issued = time(); - $lifetime = 1000; - $assoc = new Auth_OpenID_Association( - 'handle', 'secret', $issued, $lifetime, 'HMAC-SHA1'); - $this->store->storeAssociation($this->server_url, $assoc); - - $query = array( - 'openid.return_to' => $this->return_to, - 'openid.identity' => $this->server_id, - 'openid.assoc_handle' =>'not_found'); - - $result = $this->_doIdRes($query); - $error = __getError(); - - if ($error === null) { - $this->fail('_checkAuth did not happen.'); - } - } - - function test_expiredAssoc() - { - // Store an expired association for the server with the handle - // that is in the query - $issued = time() - 10; - $lifetime = 0; - $handle = 'handle'; - $assoc = new Auth_OpenID_Association( - $handle, 'secret', $issued, $lifetime, 'HMAC-SHA1'); - $this->assertTrue($assoc->getExpiresIn() <= 0); - $this->store->storeAssociation($this->server_url, $assoc); - - $query = array( - 'openid.return_to' => $this->return_to, - 'openid.identity' => $this->server_id, - 'openid.assoc_handle' => $handle); - - $info = $this->_doIdRes($query); - $this->assertEquals('failure', $info->status); - $this->assertEquals($this->consumer_id, $info->identity_url); - - $this->assertTrue(strpos($info->message, 'expired') !== false); - } - - function test_newerAssoc() - { - // Store an expired association for the server with the handle - // that is in the query - $lifetime = 1000; - - $good_issued = time() - 10; - $good_handle = 'handle'; - $good_assoc = new Auth_OpenID_Association( - $good_handle, 'secret', $good_issued, $lifetime, 'HMAC-SHA1'); - $this->store->storeAssociation($this->server_url, $good_assoc); - - $bad_issued = time() - 5; - $bad_handle = 'handle2'; - $bad_assoc = new Auth_OpenID_Association( - $bad_handle, 'secret', $bad_issued, $lifetime, 'HMAC-SHA1'); - $this->store->storeAssociation($this->server_url, $bad_assoc); - - $query = array( - 'openid.return_to' => $this->return_to, - 'openid.identity' => $this->server_id, - 'openid.assoc_handle' => $good_handle); - - $good_assoc->addSignature(array('return_to', 'identity'), $query); - $info = $this->_doIdRes($query); - $this->assertEquals($info->status, 'success'); - $this->assertEquals($this->consumer_id, $info->identity_url); - } -} - -class _MockFetcher { - function _MockFetcher($response = null) - { - // response is (code, url, body) - $this->response = $response; - $this->fetches = array(); - } - - function post($url, $body) - { - $this->fetches[] = array($url, $body, array()); - return $this->response; - } - - function get($url) - { - $this->fetches[] = array($url, null, array()); - return $this->response; - } -} - -class Tests_Auth_OpenID_Complete extends _TestIdRes { - function test_cancel() - { - $query = array('openid.mode' => 'cancel'); - $r = $this->consumer->complete($query, $this->endpoint); - $this->assertEquals($r->status, Auth_OpenID_CANCEL); - $this->assertTrue($r->identity_url == $this->endpoint->identity_url); - } - - function test_error() - { - $msg = 'an error message'; - $query = array('openid.mode' =>'error', - 'openid.error' => $msg); - $r = $this->consumer->complete($query, $this->endpoint); - $this->assertEquals($r->status, Auth_OpenID_FAILURE); - $this->assertTrue($r->identity_url == $this->endpoint->identity_url); - $this->assertEquals($r->message, $msg); - } - - function test_noMode() - { - $query = array(); - $r = $this->consumer->complete($query, $this->endpoint); - $this->assertEquals($r->status, Auth_OpenID_FAILURE); - $this->assertTrue($r->identity_url == $this->endpoint->identity_url); - } - - function test_idResMissingField() - { - $query = array('openid.mode' => 'id_res'); - $r = $this->consumer->complete($query, $this->endpoint); - $this->assertEquals($r->status, Auth_OpenID_FAILURE); - $this->assertEquals($r->identity_url, $this->consumer_id); - } - - function test_idResURLMismatch() - { - $query = array('openid.mode' => 'id_res', - 'openid.return_to' => 'return_to (just anything)', - 'openid.identity' => 'something wrong (not this->consumer_id)', - 'openid.assoc_handle' => 'does not matter'); - $r = $this->consumer->complete($query, $this->endpoint); - $this->assertEquals($r->status, Auth_OpenID_FAILURE); - $this->assertEquals($r->identity_url, $this->consumer_id); - $this->assertTrue(strpos($r->message, 'delegate') !== false); - } -} - -class Tests_Auth_OpenID_CheckAuthResponse extends _TestIdRes { - function _createAssoc() - { - $issued = time(); - $lifetime = 1000; - $assoc = new Auth_OpenID_Association( - 'handle', 'secret', $issued, $lifetime, 'HMAC-SHA1'); - $store =& $this->consumer->store; - $store->storeAssociation($this->server_url, $assoc); - $assoc2 = $store->getAssociation($this->server_url); - $this->assertEquals($assoc, $assoc2); - } - - function test_goodResponse() - { - // successful response to check_authentication - $response = array('is_valid' => 'true'); - $r = $this->consumer->_processCheckAuthResponse($response, $this->server_url); - $this->assertTrue($r); - } - - function test_missingAnswer() - { - // check_authentication returns false when the server sends no - // answer - $response = array(); - $r = $this->consumer->_processCheckAuthResponse($response, $this->server_url); - $this->assertFalse($r); - } - - function test_badResponse() - { - // check_authentication returns false when is_valid is false - $response = array('is_valid' => 'false'); - $r = $this->consumer->_processCheckAuthResponse($response, $this->server_url); - $this->assertFalse($r); - } - - function test_badResponseInvalidate() - { - // Make sure that the handle is invalidated when is_valid is - // false - $this->_createAssoc(); - $response = array('is_valid' => 'false', - 'invalidate_handle' => 'handle'); - - $r = $this->consumer->_processCheckAuthResponse($response, - $this->server_url); - $this->assertFalse($r); - $this->assertTrue( - $this->consumer->store->getAssociation($this->server_url) === null); - } - - function test_invalidateMissing() - { - // invalidate_handle with a handle that is not present - $response = array('is_valid' => 'true', - 'invalidate_handle' => 'missing'); - - $r = $this->consumer->_processCheckAuthResponse($response, $this->server_url); - $this->assertTrue($r); - } - - function test_invalidatePresent() - { - // invalidate_handle with a handle that exists""" - $this->_createAssoc(); - $response = array('is_valid' => 'true', - 'invalidate_handle' => 'handle'); - - $r = $this->consumer->_processCheckAuthResponse($response, $this->server_url); - $this->assertTrue($r); - $this->assertTrue( - $this->consumer->store->getAssociation($this->server_url) === null); - } -} - -class _IdResFetchFailingConsumer extends Auth_OpenID_GenericConsumer { - var $message = 'fetch failed'; - - function _doIdRes($query, $endpoint) - { - return new Auth_OpenID_FailureResponse($endpoint, - $this->message); - } -} - -class Tests_Auth_OpenID_FetchErrorInIdRes extends _TestIdRes { - var $consumer_class = '_IdResFetchFailingConsumer'; - - function test_idResFailure() - { - $query = array('openid.mode' => 'id_res'); - $r = $this->consumer->complete($query, $this->endpoint); - $this->assertEquals($r->status, Auth_OpenID_FAILURE); - $this->assertEquals($r->identity_url, $this->consumer_id); - $this->assertEquals($this->consumer->message, $r->message); - } -} - -class _ExceptionRaisingMockFetcher { - function get($url) - { - __raiseError(E_MOCK_FETCHER_EXCEPTION); - } - - function post($url, $body) - { - __raiseError(E_MOCK_FETCHER_EXCEPTION); - } -} - -class _BadArgCheckingConsumer extends Auth_OpenID_GenericConsumer { - function _makeKVPost($args, $tmp) - { - if ($args != array( - 'openid.mode' => 'check_authentication', - 'openid.signed' => 'foo')) { - __raiseError(E_ASSERTION_ERROR); - } - return null; - } -} - -class Tests_Auth_OpenID_Consumer_TestCheckAuth extends _TestIdRes { - function setUp() - { - $this->store = new Tests_Auth_OpenID_MemStore(); - $this->consumer = new Auth_OpenID_GenericConsumer($this->store); - $this->fetcher = new _MockFetcher(); - $this->consumer->fetcher =& $this->fetcher; - } - - function test_checkauth_error() - { - global $_Auth_OpenID_server_url; - $this->fetcher->response = new Services_Yadis_HTTPResponse("http://some_url", - 404, - array(), - "blah:blah\n"); - $query = array('openid.signed' => 'stuff, things'); - $r = $this->consumer->_checkAuth($query, $_Auth_OpenID_server_url); - if ($r !== false) { - $this->fail("Expected _checkAuth result to be false"); - } - } - - function test_bad_args() - { - $query = array('openid.signed' => 'foo', - 'closid.foo' => 'something'); - - $consumer = new _BadArgCheckingConsumer($this->store); - $consumer->_checkAuth($query, 'does://not.matter'); - $this->assertEquals(__getError(), E_ASSERTION_ERROR); - } -} - -class Tests_Auth_OpenID_Consumer_TestFetchAssoc extends PHPUnit_TestCase { - function setUp() - { - $this->store = new Tests_Auth_OpenID_MemStore(); - $this->fetcher = new _MockFetcher(); - $this->consumer = new Auth_OpenID_GenericConsumer($this->store); - $this->consumer->fetcher =& $this->fetcher; - } - - function test_kvpost_error() - { - $this->fetcher->response = new Services_Yadis_HTTPResponse("http://some_url", - 404, - array(), - "blah:blah\n"); - $r = $this->consumer->_makeKVPost(array('openid.mode' => 'associate'), - "http://server_url"); - if ($r !== null) { - $this->fail("Expected _makeKVPost result to be null"); - } - } - - function test_error_exception() - { - $this->consumer->fetcher = new _ExceptionRaisingMockFetcher(); - - $this->consumer->_makeKVPost(array('openid.mode' => 'associate'), - "http://server_url"); - - if (__getError() !== E_MOCK_FETCHER_EXCEPTION) { - $this->fail("Expected ExceptionRaisingMockFetcher to " . - "raise E_MOCK_FETCHER_EXCEPTION"); - } - - // exception fetching returns no association - $this->assertEquals(@$this->consumer->_getAssociation('some://url'), null); - - $this->consumer->_checkAuth(array('openid.signed' => ''), - 'some://url'); - - if (__getError() !== E_MOCK_FETCHER_EXCEPTION) { - $this->fail("Expected ExceptionRaisingMockFetcher to " . - "raise E_MOCK_FETCHER_EXCEPTION (_checkAuth)"); - } - } -} - -class Tests_Auth_OpenID_AuthRequest extends PHPUnit_TestCase { - function setUp() - { - $this->endpoint = new Auth_OpenID_ServiceEndpoint(); - $this->endpoint->delegate = 'http://server.unittest/joe'; - $this->endpoint->server_url = 'http://server.unittest/'; - $this->assoc =& $this; - $this->assoc->handle = 'assoc@handle'; - $this->authreq = new Auth_OpenID_AuthRequest($this->endpoint, $this->assoc); - } - - function test_addExtensionArg() - { - $this->authreq->addExtensionArg('bag', 'color', 'brown'); - $this->authreq->addExtensionArg('bag', 'material', 'paper'); - $this->assertEquals($this->authreq->extra_args, - array('openid.bag.color' => 'brown', - 'openid.bag.material' => 'paper')); - $url = $this->authreq->redirectURL('http://7.utest/', 'http://7.utest/r'); - $this->failUnless(strpos($url, 'openid.bag.color=brown') !== false, - 'extension arg not found in '.$url); - $this->failUnless(strpos($url, 'openid.bag.material=paper') !== false, - 'extension arg not found in '.$url); - } -} - -class Tests_Auth_OpenID_SuccessResponse extends PHPUnit_TestCase { - function setUp() - { - $this->endpoint = new Auth_OpenID_ServiceEndpoint(); - $this->endpoint->identity_url = 'identity_url'; - } - - function test_extensionResponse() - { - $resp = SuccessResponse($this->endpoint, array( - 'openid.unittest.one' => '1', - 'openid.unittest.two' =>'2', - 'openid.sreg.nickname' => 'j3h', - 'openid.return_to' => 'return_to')); - - $utargs = $resp->extensionResponse('unittest'); - $this->assertEquals($utargs, array('one' => '1', 'two' => '2')); - $sregargs = $resp->extensionResponse('sreg'); - $this->assertEquals($sregargs, array('nickname' => 'j3h')); - } - - function test_noReturnTo() - { - $resp = SuccessResponse($this->endpoint, array()); - $this->failUnless($resp->getReturnTo() === null); - } - - function test_returnTo() - { - $resp = SuccessResponse($this->endpoint, - array('openid.return_to' => 'return_to')); - $this->assertEquals($resp->getReturnTo(), 'return_to'); - } -} - -class Tests_Auth_OpenID_ParseAssociation extends _TestIdRes { - var $secret = ''; - - function setUp() - { - parent::setUp(); - $this->secret = str_repeat('x', 20); - } - - function test_missing() - { - // Missing required arguments - $result = $this->consumer->_parseAssociation(array(), null, 'server_url'); - $this->assertTrue($result === null); - } - - function _setUpDH() - { - list($sess, $args) = $this->consumer->_createAssociateRequest($this->server_url); - $server_sess = Auth_OpenID_DiffieHellmanServerSession::fromQuery($args); - $server_resp = $server_sess->answer($this->secret); - $server_resp['assoc_type'] = 'HMAC-SHA1'; - $server_resp['assoc_handle'] = 'handle'; - $server_resp['expires_in'] = '1000'; - $server_resp['session_type'] = 'DH-SHA1'; - return array($sess, $server_resp); - } - - function test_success() - { - list($sess, $server_resp) = $this->_setUpDH(); - $ret = $this->consumer->_parseAssociation($server_resp, $sess, - 'server_url'); - $this->assertTrue($ret !== null); - $this->assertEquals($ret->assoc_type, 'HMAC-SHA1'); - $this->assertEquals($ret->secret, $this->secret); - $this->assertEquals($ret->handle, 'handle'); - $this->assertEquals($ret->lifetime, 1000); - } - - function test_badAssocType() - { - list($sess, $server_resp) = $this->_setUpDH(); - $server_resp['assoc_type'] = 'Crazy Low Prices!!!'; - $ret = $this->consumer->_parseAssociation($server_resp, $sess, - 'server_url'); - $this->assertTrue($ret === null); - } - - function test_badExpiresIn() - { - list($sess, $server_resp) = $this->_setUpDH(); - $server_resp['expires_in'] = 'Crazy Low Prices!!!'; - $ret = $this->consumer->_parseAssociation($server_resp, $sess, - 'server_url'); - $this->assertTrue($ret === null); - } - - function test_badSessionType() - { - list($sess, $server_resp) = $this->_setUpDH(); - $server_resp['session_type'] = '|/iA6rA'; - $ret = $this->consumer->_parseAssociation($server_resp, $sess, - 'server_url'); - $this->assertTrue($ret === null); - } - - function test_plainFallback() - { - $sess = new Auth_OpenID_DiffieHellmanConsumerSession(); - $server_resp = array( - 'assoc_type' => 'HMAC-SHA1', - 'assoc_handle' => 'handle', - 'expires_in' => '1000', - 'mac_key' => base64_encode($this->secret)); - - $ret = $this->consumer->_parseAssociation($server_resp, $sess, - 'server_url'); - $this->assertTrue($ret !== null); - $this->assertEquals($ret->assoc_type, 'HMAC-SHA1'); - $this->assertEquals($ret->secret, $this->secret); - $this->assertEquals($ret->handle, 'handle'); - $this->assertEquals($ret->lifetime, 1000); - } - - function test_plainFallbackFailure() - { - $sess = new Auth_OpenID_DiffieHellmanConsumerSession(); - // missing mac_key - $server_resp = array( - 'assoc_type' => 'HMAC-SHA1', - 'assoc_handle' => 'handle', - 'expires_in' => '1000'); - - $ret = $this->consumer->_parseAssociation($server_resp, $sess, - 'server_url'); - $this->assertTrue($ret === null); - } - - function test_badDHValues() - { - list($sess, $server_resp) = $this->_setUpDH(); - $server_resp['enc_mac_key'] = "\x00\x00\x00"; - $ret = $this->consumer->_parseAssociation($server_resp, $sess, - 'server_url'); - $this->assertTrue($ret === null); - } -} - -class _StubConsumer { - function _StubConsumer() - { - $this->assoc = null; - $this->response = null; - $this->endpoint = null; - $this->fetcher = new _MockFetcher(); - } - - function begin($service) - { - $auth_req = new Auth_OpenID_AuthRequest($this->assoc, $service); - $this->endpoint = $service; - return $auth_req; - } - - function complete($query, $endpoint) - { - return $this->response; - } -} - -class Tests_Auth_OpenID_ConsumerTest2 extends PHPUnit_TestCase { - function setUp() - { - foreach ($_SESSION as $k => $v) { - unset($_SESSION[$k]); - } - - $this->endpoint = new Auth_OpenID_ServiceEndpoint(); - $this->identity_url = 'http://identity.url/'; - $this->endpoint->identity_url = $this->identity_url; - $this->store = null; - $this->session = new Services_Yadis_PHPSession(); - $this->consumer =& new Auth_OpenID_Consumer($this->store, &$this->session); - $this->consumer->consumer =& new _StubConsumer(); - $this->discovery =& new Services_Yadis_Discovery(&$this->session, - $this->identity_url, - $this->consumer->session_key_prefix); - } - - function test_beginWithoutDiscovery() - { - // Does this really test anything non-trivial? - $result = $this->consumer->beginWithoutDiscovery($this->endpoint); - - // The result is an auth request - $this->assertTrue(strtolower(get_class($result)) == - 'auth_openid_authrequest'); - - $loader = new Auth_OpenID_ServiceEndpointLoader(); - - // Side-effect of calling beginWithoutDiscovery is setting the - // session value to the endpoint attribute of the result - $this->assertTrue( - $loader->fromSession( - $this->session->get($this->consumer->_token_key)) == - $result->endpoint); - - // The endpoint that we passed in is the endpoint on the - // auth_request - $this->assertTrue($result->endpoint == $this->endpoint); - } - - function test_completeEmptySession() - { - $response = $this->consumer->complete(array()); - $this->assertEquals($response->status, Auth_OpenID_FAILURE); - $this->assertTrue($response->identity_url === null); - } - - function _doResp($auth_req, $exp_resp) - { - // complete a transaction, using the expected response from - // the generic consumer. - $this->consumer->consumer->response = $exp_resp; - - // endpoint is stored in the session - // $this->assertTrue($this->session->data); - $this->assertTrue($_SESSION); - $resp = $this->consumer->complete(array()); - - // All responses should have the same identity URL, and the - // session should be cleaned out - $this->assertTrue($resp->identity_url == $this->identity_url); - $this->assertFalse(in_array($this->consumer->_token_key, - $_SESSION)); // this->session->data)); - - // Expected status response - $this->assertEquals($resp->status, $exp_resp->status); - - return $resp; - } - - function _doRespNoDisco($exp_resp) - { - // Set up a transaction without discovery - $auth_req = $this->consumer->beginWithoutDiscovery($this->endpoint); - $resp = $this->_doResp($auth_req, $exp_resp); - // There should be nothing left in the session once we have - // completed. - $this->assertFalse($this->session->contents()); - return $resp; - } - - function test_noDiscoCompleteSuccessWithToken() - { - $this->_doRespNoDisco(new Auth_OpenID_SuccessResponse($this->endpoint, - array())); - } - - function test_noDiscoCompleteCancelWithToken() - { - $this->_doRespNoDisco(new Auth_OpenID_CancelResponse($this->endpoint)); - } - - function test_noDiscoCompleteFailure() - { - $msg = 'failed!'; - $resp = $this->_doRespNoDisco(new Auth_OpenID_FailureResponse($this->endpoint, $msg)); - $this->assertTrue($resp->message == $msg); - } - - function test_noDiscoCompleteSetupNeeded() - { - $setup_url = 'http://setup.url/'; - $resp = $this->_doRespNoDisco( - new Auth_OpenID_SetupNeededResponse($this->endpoint, $setup_url)); - $this->assertTrue($resp->setup_url == $setup_url); - } - - // To test that discovery is cleaned up, we need to initialize a - // Yadis manager, and have it put its values in the session. - function _doRespDisco($is_clean, $exp_resp) - { - // Set up and execute a transaction, with discovery - $this->discovery->createManager(array($this->endpoint), - $this->identity_url); - $auth_req = $this->consumer->begin($this->identity_url); - $resp = $this->_doResp($auth_req, $exp_resp); - - $manager = $this->discovery->getManager(); - if ($is_clean) { - $this->assertTrue($this->discovery->getManager() === null); - } else { - $this->assertFalse($this->discovery->getManager() === null); - } - - return $resp; - } - - // Cancel and success DO clean up the discovery process - function test_completeSuccess() - { - $this->_doRespDisco(true, - new Auth_OpenID_SuccessResponse($this->endpoint, - array())); - } - - function test_completeCancel() - { - $this->_doRespDisco(true, - new Auth_OpenID_CancelResponse($this->endpoint)); - } - - // Failure and setup_needed don't clean up the discovery process - function test_completeFailure() - { - $msg = 'failed!'; - $resp = $this->_doRespDisco(false, - new Auth_OpenID_FailureResponse($this->endpoint, $msg)); - $this->assertTrue($resp->message == $msg); - } - - function test_completeSetupNeeded() - { - $setup_url = 'http://setup.url/'; - $resp = $this->_doRespDisco(false, - new Auth_OpenID_SetupNeededResponse($this->endpoint, $setup_url)); - $this->assertTrue($resp->status == Auth_OpenID_SETUP_NEEDED); - $this->assertTrue($resp->setup_url == $setup_url); - } - - function test_begin() - { - $this->discovery->createManager(array($this->endpoint), - $this->identity_url); - // Should not raise an exception - $auth_req = $this->consumer->begin($this->identity_url); - $this->assertTrue(strtolower(get_class($auth_req)) === 'auth_openid_authrequest'); - $this->assertTrue($auth_req->endpoint == $this->endpoint); - $this->assertTrue($auth_req->endpoint == $this->consumer->consumer->endpoint); - $this->assertTrue($auth_req->assoc == $this->consumer->consumer->assoc); - } -} - -// Add other test cases to be run. -$Tests_Auth_OpenID_Consumer_other = array( - new Tests_Auth_OpenID_Consumer_TestSetupNeeded(), - new Tests_Auth_OpenID_Consumer_TestCheckAuth(), - new Tests_Auth_OpenID_Consumer_TestCheckAuthTriggered(), - new Tests_Auth_OpenID_Consumer_TestFetchAssoc(), - new Tests_Auth_OpenID_Consumer_CheckNonceTest(), - new Tests_Auth_OpenID_Complete(), - new Tests_Auth_OpenID_CheckAuthResponse(), - new Tests_Auth_OpenID_FetchErrorInIdRes(), - new Tests_Auth_OpenID_ParseAssociation(), - new Tests_Auth_OpenID_ConsumerTest2() - ); - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/CryptUtil.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/CryptUtil.php deleted file mode 100644 index 497002385..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/CryptUtil.php +++ /dev/null @@ -1,55 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'Auth/OpenID/CryptUtil.php'; - -class Tests_Auth_OpenID_CryptUtil extends PHPUnit_TestCase { - function test_length() - { - $cases = array(1, 10, 255); - foreach ($cases as $length) { - $data = Auth_OpenID_CryptUtil::getBytes($length); - $this->assertEquals(strlen($data), $length); - } - } - - function test_different() - { - $num_iterations = 100; - $data_length = 20; - - $data = Auth_OpenID_CryptUtil::getBytes($num_iterations); - for ($i = 0; $i < $num_iterations; $i++) { - $last = $data; - $data = Auth_OpenID_CryptUtil::getBytes($data_length); - $this->assertFalse($data == $last); - } - } - - function test_cryptrand() - { - // It's possible, but HIGHLY unlikely that a correct - // implementation will fail by returning the same number twice - - $s = Auth_OpenID_CryptUtil::getBytes(32); - $t = Auth_OpenID_CryptUtil::getBytes(32); - $this->assertEquals(strlen($s), 32); - $this->assertEquals(strlen($t), 32); - $this->assertFalse($s == $t); - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/DiffieHellman.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/DiffieHellman.php deleted file mode 100644 index 011857c89..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/DiffieHellman.php +++ /dev/null @@ -1,160 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'Auth/OpenID/DiffieHellman.php'; -require_once 'Tests/Auth/OpenID/TestUtil.php'; - -class Tests_Auth_OpenID_DiffieHellman_CheckCases extends PHPUnit_TestCase { - function Tests_Auth_OpenID_DiffieHellman_CheckCases($cases, $n) - { - $this->cases = $cases; - $this->n = $n; - } - - function runTest() - { - $this->assertEquals($this->n, count($this->cases)); - } -} - -class Tests_Auth_OpenID_DiffieHellman_Private extends PHPUnit_TestCase { - function Tests_Auth_OpenID_DiffieHellman_Private($name, $input, $expected) - { - $this->setName("$name"); - $this->input = $input; - $this->expected = $expected; - } - - function runTest() - { - $lib =& Auth_OpenID_getMathLib(); - $dh = new Auth_OpenID_DiffieHellman(null, null, $this->input); - $this->assertEquals($lib->cmp($this->expected, $dh->getPublicKey()), 0); - } -} - -class Tests_Auth_OpenID_DiffieHellman_Exch extends PHPUnit_TestCase { - function Tests_Auth_OpenID_DiffieHellman_Exch($name, $p1, $p2, $shared) - { - $this->setName("$name"); - $this->p1 = $p1; - $this->p2 = $p2; - $this->shared = $shared; - } - - function runTest() - { - $lib =& Auth_OpenID_getMathLib(); - $shared = $lib->init($this->shared); - $dh1 = new Auth_OpenID_DiffieHellman(null, null, $this->p1); - $dh2 = new Auth_OpenID_DiffieHellman(null, null, $this->p2); - $sh1 = $dh1->getSharedSecret($dh2->getPublicKey()); - $sh2 = $dh2->getSharedSecret($dh1->getPublicKey()); - $this->assertEquals($lib->cmp($shared, $sh1), 0); - $this->assertEquals($lib->cmp($shared, $sh2), 0); - } -} - -class Tests_Auth_OpenID_DiffieHellman extends PHPUnit_TestSuite { - function _readPrivateTestCases() - { - $lines = Tests_Auth_OpenID_readlines('dhpriv'); - $cases = array(); - foreach ($lines as $line) { - $case = array(); - if (!preg_match('/^(\d+) (\d+)\n$/', $line, $case)) { - trigger_error("Bad test input: $line", E_USER_ERROR); - } - - $c = count($case); - if ($c != 3) { - trigger_error("Wrong number of elements in parsed case: $c", - E_USER_ERROR); - } - - array_shift($case); - $cases[] = $case; - } - - return $cases; - } - - function _readExchTestCases() - { - $lines = Tests_Auth_OpenID_readlines('dhexch'); - $cases = array(); - foreach ($lines as $line) { - $case = array(); - if (!preg_match('/^(\d+) (\d+) (\d+)\n$/', $line, $case)) { - trigger_error("Bad test input: $line", E_USER_ERROR); - } - - $c = count($case); - if ($c != 4) { - trigger_error("Wrong number of elements in parsed case: $c", - E_USER_ERROR); - } - - array_shift($case); - $cases[] = $case; - } - return $cases; - } - - function Tests_Auth_OpenID_DiffieHellman($name) - { - $this->setName($name); - - $priv_cases = Tests_Auth_OpenID_DiffieHellman::_readPrivateTestCases(); - $sanity = new Tests_Auth_OpenID_DiffieHellman_CheckCases( - $priv_cases, 29); - $sanity->setName('Check parsing of priv test data'); - $this->addTest($sanity); - - $exch_cases = Tests_Auth_OpenID_DiffieHellman::_readExchTestCases(); - $sanity = new Tests_Auth_OpenID_DiffieHellman_CheckCases( - $exch_cases, 25); - $sanity->setName('Check parsing of exch test data'); - $this->addTest($sanity); - - if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) { - if (defined('Tests_Auth_OpenID_thorough')) { - $npriv = count($priv_cases); - $nexch = count($exch_cases); - } else { - $npriv = 1; - $nexch = 3; - } - - for ($i = 0; $i < $npriv; $i++) { - list($input, $expected) = $priv_cases[$i]; - $one = new Tests_Auth_OpenID_DiffieHellman_Private( - "DHPriv $i", $input, $expected); - $this->addTest($one); - } - - for ($i = 0; $i < $nexch; $i++) { - $case = $exch_cases[$i]; - $one = new Tests_Auth_OpenID_DiffieHellman_Exch( - $i, $case[0], $case[1], $case[2]); - $this->addTest($one); - } - } - } -} - -?> diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Discover.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Discover.php deleted file mode 100644 index b01835c9b..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Discover.php +++ /dev/null @@ -1,670 +0,0 @@ -responses = $responses; - } - - function get($url) - { - $response = array_pop($this->responses); - assert($response[1] == $url); - return $response; - } -} - -class Tests_Services_Yadis_DiscoveryFailure extends PHPUnit_TestCase { - - function Tests_Services_Yadis_DiscoveryFailure($responses) - { - // Response is ($code, $url, $body). - $this->cases = array( - array(null, 'http://network.error/', ''), - array(404, 'http://not.found/', ''), - array(400, 'http://bad.request/', ''), - array(500, 'http://server.error/', ''), - array(200, 'http://header.found/', 200, - array('x-xrds-location' => 'http://xrds.missing/')), - array(404, 'http://xrds.missing/', '')); - - $this->url = $responses[0]->final_url; - $this->responses = $responses; - $this->fetcher = new _SimpleMockFetcher($this->responses); - } - - function runTest() - { - foreach ($this->cases as $case) { - list($status, $url, $body) = $case; - $expected_status = $status; - - $result = Auth_OpenID_discover($this->url, $this->fetcher); - list($id_url, $svclist, $http_response) = $result; - - $this->assertEquals($http_response->status, $expected_status); - } - } -} - -### Tests for raising/catching exceptions from the fetcher through the -### discover function - -class _ErrorRaisingFetcher { - // Just raise an exception when fetch is called - - function _ErrorRaisingFetcher($thing_to_raise) - { - $this->thing_to_raise = $thing_to_raise; - } - - function post($body = null) - { - __raiseError($this->thing_to_raise); - } - - function get($url) - { - __raiseError($this->thing_to_raise); - } -} - -define('E_AUTH_OPENID_EXCEPTION', 'e_exception'); -define('E_AUTH_OPENID_DIDFETCH', 'e_didfetch'); -define('E_AUTH_OPENID_VALUE_ERROR', 'e_valueerror'); -define('E_AUTH_OPENID_RUNTIME_ERROR', 'e_runtimeerror'); -define('E_AUTH_OPENID_OI', 'e_oi'); - -class Tests_Auth_OpenID_Discover_FetchException extends PHPUnit_TestCase { - // Make sure exceptions get passed through discover function from - // fetcher. - - function Tests_Auth_OpenID_Discover_FetchException($exc) - { - $this->cases = array(E_AUTH_OPENID_EXCEPTION, - E_AUTH_OPENID_DIDFETCH, - E_AUTH_OPENID_VALUE_ERROR, - E_AUTH_OPENID_RUNTIME_ERROR, - E_AUTH_OPENID_OI); - } - - function runTest() - { - foreach ($this->cases as $thing_to_raise) { - $fetcher = ErrorRaisingFetcher($thing_to_raise); - Auth_OpenID_discover('http://doesnt.matter/', $fetcher); - $exc = __getError(); - - if ($exc !== $thing_to_raise) { - $this->fail('FetchException expected %s to be raised', - $thing_to_raise); - } - } - } -} - - -// Tests for openid.consumer.discover.discover - -class _DiscoveryMockFetcher { - function _DiscoveryMockFetcher(&$documents) - { - $this->redirect = null; - $this->documents = &$documents; - $this->fetchlog = array(); - } - - function post($url, $body = null, $headers = null) - { - return $this->get($url, $headers, $body); - } - - function get($url, $headers = null, $body = null) - { - $this->fetchlog[] = array($url, $body, $headers); - - if ($this->redirect) { - $final_url = $this->redirect; - } else { - $final_url = $url; - } - - if (array_key_exists($url, $this->documents)) { - list($ctype, $body) = $this->documents[$url]; - $status = 200; - } else { - $status = 404; - $ctype = 'text/plain'; - $body = ''; - } - - return new Services_Yadis_HTTPResponse($final_url, $status, - array('content-type' => $ctype), $body); - } -} - -define('DISCOVERYBASE_ID_URL', "http://someuser.unittest/"); - -class _DiscoveryBase extends PHPUnit_TestCase { - var $id_url = DISCOVERYBASE_ID_URL; - var $documents = array(); - - function setUp() - { - $this->fetcher = new _DiscoveryMockFetcher($this->documents); - } -} - -$__yadis_2entries = ' - - - =!1000 - - - http://openid.net/signon/1.0 - http://www.myopenid.com/server - http://smoker.myopenid.com/ - - - - http://openid.net/signon/1.0 - http://www.livejournal.com/openid/server.bml - http://frank.livejournal.com/ - - - - -'; - -$__yadis_2entries_flipped_priority = ' - - - - - http://openid.net/signon/1.0 - http://www.myopenid.com/server - http://smoker.myopenid.com/ - - - - http://openid.net/signon/1.0 - http://www.livejournal.com/openid/server.bml - http://frank.livejournal.com/ - - - - -'; - -$__yadis_another = ' - - - - - http://openid.net/signon/1.0 - http://vroom.unittest/server - http://smoker.myopenid.com/ - - - -'; - -$__yadis_0entries = ' - - - - http://is-not-openid.unittest/ - http://noffing.unittest./ - - - -'; - -$__yadis_no_delegate = ' - - - - http://openid.net/signon/1.0 - http://www.myopenid.com/server - - - -'; - -$__openid_html = ' - - - - Identity Page for Smoker - - -

foo

-'; - -$__openid_html_no_delegate = ' - - - - Identity Page for Smoker - -

foo

-'; - -$__openid_and_yadis_html = ' - - - - Identity Page for Smoker - - - -

foo

-'; - -class _MockFetcherForXRIProxy { - - function _MockFetcherForXRIProxy($documents) - { - $this->documents = $documents; - $this->fetchlog = array(); - } - - function get($url, $headers=null) - { - return $this->fetch($url, $headers); - } - - function post($url, $body) - { - return $this->fetch($url, $body); - } - - function fetch($url, $body=null, $headers=null) - { - $this->fetchlog[] = array($url, $body, $headers); - - $u = parse_url($url); - $proxy_host = $u['host']; - $xri = $u['path']; - $query = $u['query']; - - if ((!$headers) && (!$query)) { - trigger_error('Error in mock XRI fetcher: no headers or query'); - } - - if (Services_Yadis_startswith($xri, '/')) { - $xri = substr($xri, 1); - } - - if (array_key_exists($xri, $this->documents)) { - list($ctype, $body) = $this->documents[$xri]; - $status = 200; - } else { - $status = 404; - $ctype = 'text/plain'; - $body = ''; - } - - return new Services_Yadis_HTTPResponse($url, $status, - array('content-type' => $ctype), - $body); - } -} - -class Tests_Auth_OpenID_DiscoverSession { - function Tests_Auth_OpenID_DiscoverSession() - { - $this->data = array(); - } - - function set($name, $value) - { - $this->data[$name] = $value; - } - - function get($name, $default=null) - { - if (array_key_exists($name, $this->data)) { - return $this->data[$name]; - } else { - return $default; - } - } - - function del($name) - { - unset($this->data[$name]); - } -} - -$__Tests_BOGUS_SERVICE = new Auth_OpenID_ServiceEndpoint(); -$__Tests_BOGUS_SERVICE->identity_url = "=really.bogus.endpoint"; - -function __serviceCheck_discover_cb($url, $fetcher) -{ - global $__Tests_BOGUS_SERVICE; - return array($__Tests_BOGUS_SERVICE); -} - -class Tests_Auth_OpenID_Discover extends _DiscoveryBase { - function _usedYadis($service) - { - $this->assertTrue($service->used_yadis, - "Expected to use Yadis"); - } - - function _notUsedYadis($service) - { - $this->assertFalse($service->used_yadis, - "Expected to use old-style discovery"); - } - - function test_404() - { - $result = Auth_OpenID_discover($this->id_url . '/404', - $this->fetcher); - - list($id_url, $svclist, $http_response) = $result; - - $this->assertTrue($http_response->status == 404, - "Expected 404 status from /404 discovery"); - } - - function test_noYadis() - { - global $__openid_html; - - $this->documents[$this->id_url] = array('text/html', $__openid_html); - - list($id_url, $services, $http_response) = - Auth_OpenID_discover($this->id_url, - $this->fetcher); - - $this->assertEquals($this->id_url, $id_url); - - $this->assertEquals(count($services), 1, - "More than one service"); - - $this->assertEquals($services[0]->server_url, - "http://www.myopenid.com/server"); - - $this->assertEquals($services[0]->delegate, - "http://smoker.myopenid.com/"); - - $this->assertEquals($services[0]->identity_url, $this->id_url); - $this->_notUsedYadis($services[0]); - } - - function test_managerServices() - { - global $__yadis_2entries_flipped_priority; - - $url = "http://bogus.xxx/"; - $sess = new Tests_Auth_OpenID_DiscoverSession(); - $m = new Services_Yadis_Discovery($sess, $url); - - $documents = array( - $url => array("application/xrds+xml", - $__yadis_2entries_flipped_priority) - ); - - $fetcher = new _DiscoveryMockFetcher($documents); - - $expected = array("http://frank.livejournal.com/", - "http://smoker.myopenid.com/"); - - foreach ($expected as $openid) { - $s = $m->getNextService('_Auth_OpenID_discoverServiceList', - $fetcher); - $this->assertEquals($s->delegate, $openid); - } - } - - function test_serviceCheck() - { - global $__Tests_BOGUS_SERVICE; - - $url = "http://bogus.xxx/"; - $sess =& new Tests_Auth_OpenID_DiscoverSession(); - $disco =& new Services_Yadis_Discovery($sess, $url); - - # Set an empty manager to be sure it gets blown away - $manager =& new Services_Yadis_Manager($url, null, array(), - $disco->getSessionKey()); - - $loader =& new Services_Yadis_ManagerLoader(); - $disco->session->set($disco->session_key, - serialize($loader->toSession($manager))); - - $docs = array(); - $fetcher =& new _DiscoveryMockFetcher($docs); - - $result = $disco->getNextService('__serviceCheck_discover_cb', $fetcher); - - $newMan = $disco->getManager(); - - $currentService = $newMan->_current; - $this->assertEquals($currentService->identity_url, - $__Tests_BOGUS_SERVICE->identity_url); - } - - function test_noOpenID() - { - $this->fetcher->documents = array( - $this->id_url => array('text/plain', "junk")); - - list($id_url, $services, $http) = Auth_OpenID_discover($this->id_url, - $this->fetcher); - - $this->assertEquals($this->id_url, $id_url); - - $this->assertFalse(count($services) > 0); - } - - function test_yadis() - { - global $__yadis_2entries; - - $this->fetcher->documents = array( - DISCOVERYBASE_ID_URL => array('application/xrds+xml', - $__yadis_2entries)); - - list($id_url, $services, $http) = Auth_OpenID_discover($this->id_url, - $this->fetcher); - - $this->assertEquals($this->id_url, $id_url); - - $this->assertEquals(count($services), 2, - "Not 2 services"); - - $this->assertEquals($services[0]->server_url, - "http://www.myopenid.com/server"); - - $this->_usedYadis($services[0]); - - $this->assertEquals($services[1]->server_url, - "http://www.livejournal.com/openid/server.bml"); - - $this->_usedYadis($services[1]); - } - - function test_redirect() - { - global $__openid_html; - - $expected_final_url = "http://elsewhere.unittest/"; - - $this->fetcher->redirect = $expected_final_url; - $this->fetcher->documents = array( - $this->id_url => array('text/html', $__openid_html)); - - list($id_url, $services, $http) = Auth_OpenID_discover($this->id_url, - $this->fetcher); - - $this->assertEquals($expected_final_url, $id_url); - - $this->assertEquals(count($services), 1, - "More than one service"); - - $this->assertEquals($services[0]->server_url, - "http://www.myopenid.com/server"); - - $this->assertEquals($services[0]->delegate, - "http://smoker.myopenid.com/"); - - $this->assertEquals($services[0]->identity_url, - $expected_final_url); - - $this->_notUsedYadis($services[0]); - } - - function test_emptyList() - { - global $__yadis_0entries; - - $this->fetcher->documents = array( - $this->id_url => - array('application/xrds+xml', $__yadis_0entries)); - - list($id_url, $services, $http) = Auth_OpenID_discover($this->id_url, - $this->fetcher); - - $this->assertEquals($this->id_url, $id_url); - - $this->assertTrue(count($services) == 0); - } - - function test_emptyListWithLegacy() - { - global $__openid_and_yadis_html, - $__yadis_0entries; - - $this->fetcher->documents = array( - $this->id_url => array('text/html', $__openid_and_yadis_html), - $this->id_url . 'xrds' => array('application/xrds+xml', $__yadis_0entries)); - - list($id_url, $services, $http) = Auth_OpenID_discover($this->id_url, - $this->fetcher); - - $this->assertEquals($this->id_url, $id_url); - - $this->assertEquals(count($services), 1, - "Not one service"); - - $this->assertEquals($services[0]->server_url, - "http://www.myopenid.com/server"); - - $this->assertEquals($services[0]->identity_url, $this->id_url); - - $this->_notUsedYadis($services[0]); - } - - function test_yadisNoDelegate() - { - global $__yadis_no_delegate; - - $this->fetcher->documents = array( - $this->id_url => array('application/xrds+xml', $__yadis_no_delegate)); - - list($id_url, $services, $http) = Auth_OpenID_discover($this->id_url, - $this->fetcher); - - $this->assertEquals($this->id_url, $id_url); - - $this->assertEquals(count($services), 1, - "Not 1 service"); - - $this->assertEquals($services[0]->server_url, - "http://www.myopenid.com/server"); - - $this->assertEquals($services[0]->delegate, null, - 'Delegate should be null'); - - $this->_usedYadis($services[0]); - } - - function test_openidNoDelegate() - { - global $__openid_html_no_delegate; - - $this->fetcher->documents = array( - $this->id_url => array('text/html', - $__openid_html_no_delegate)); - - list($id_url, $services, $http) = Auth_OpenID_discover($this->id_url, - $this->fetcher); - - $this->assertEquals($this->id_url, $id_url); - - $this->assertEquals($services[0]->server_url, - "http://www.myopenid.com/server"); - - $this->assertEquals($services[0]->identity_url, $this->id_url); - - $this->assertEquals($services[0]->delegate, null, - 'Delegate should be null'); - - $this->_notUsedYadis($services[0]); - } - - function test_xriDiscovery() - { - global $__yadis_2entries; - - $documents = array( - '=smoker' => array('application/xrds+xml', - $__yadis_2entries) - ); - - $fetcher = new _MockFetcherForXRIProxy($documents); - - list($user_xri, $services) = _Auth_OpenID_discoverXRI('=smoker', - $fetcher); - $this->assertTrue($services); - - $this->assertEquals($services[0]->server_url, - "http://www.myopenid.com/server"); - $this->assertEquals($services[1]->server_url, - "http://www.livejournal.com/openid/server.bml"); - $this->assertEquals($services[0]->canonicalID, Services_Yadis_XRI("=!1000")); - } - - function test_useCanonicalID() - { - // When there is no delegate, the CanonicalID should be used - // with XRI. - - $endpoint = new Auth_OpenID_ServiceEndpoint(); - $endpoint->identity_url = "=example"; - $endpoint->canonicalID = Services_Yadis_XRI("=!1000"); - $this->assertEquals($endpoint->getServerID(), Services_Yadis_XRI("=!1000")); - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/HMACSHA1.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/HMACSHA1.php deleted file mode 100644 index 07fd4cba7..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/HMACSHA1.php +++ /dev/null @@ -1,148 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'Auth/OpenID/HMACSHA1.php'; -require_once 'Tests/Auth/OpenID/TestUtil.php'; - -class Tests_Auth_OpenID_HMACSHA1_TestCase extends PHPUnit_TestCase { - function Tests_Auth_OpenID_HMACSHA1_TestCase( - $name, $key, $data, $expected) - { - - $this->setName($name); - $this->key = $key; - $this->data = $data; - $this->expected = $expected; - } - - function runTest() - { - $actual = Auth_OpenID_HMACSHA1($this->key, $this->data); - $this->assertEquals($this->expected, $actual); - } -} - -class Tests_Auth_OpenID_HMACSHA1 extends PHPUnit_TestSuite { - function _strConvert($s) - { - $repeat_pat = '/^0x([a-f0-9]{2}) repeated (\d+) times$/'; - if (preg_match($repeat_pat, $s, $match)) { - $c = chr(hexdec($match[1])); - $n = $match[2]; - $data = ''; - for ($i = 0; $i < $n; $i++) { - $data .= $c; - } - } elseif (substr($s, 0, 2) == "0x") { - $data = pack('H*', substr($s, 2, strlen($s) - 1)); - } elseif (preg_match('/^"(.*)"$/', $s, $match)) { - $data = $match[1]; - } else { - trigger_error("Bad data format: $s", E_USER_ERROR); - } - return $data; - } - - function _readTestCases() - { - $lines = Tests_Auth_OpenID_readlines('hmac.txt'); - $cases = array(); - $case = array(); - foreach ($lines as $line) { - if ($line{0} == "#") { - continue; - } - - // Blank line separates test cases - if ($line == "\n") { - $cases[] = $case; - $case = array(); - } else { - $match = array(); - $pat = '/^([a-z0-9_-]+) =\s+(.*?)\n$/'; - if (!preg_match($pat, $line, $match)) { - trigger_error("Bad test input: $line", E_USER_ERROR); - } - - $c = count($match); - if ($c != 3) { - trigger_error( - "Wrong number of elements in parsed case: $c", - E_USER_ERROR); - return false; - } - - $key = $match[1]; - $value = $match[2]; - $case[$key] = $value; - } - } - - if (count($case)) { - $cases[] = $case; - } - - $final = array(); - - // Normalize strings and check data integrity - foreach ($cases as $case) { - $clean = array(); - $clean["key"] = - Tests_Auth_OpenID_HMACSHA1::_strConvert($case["key"]); - if (strlen($clean["key"]) != $case["key_len"]) { - trigger_error("Bad key length", E_USER_ERROR); - } - - $clean["data"] = - Tests_Auth_OpenID_HMACSHA1::_strConvert($case["data"]); - if (strlen($clean["data"]) != $case["data_len"]) { - trigger_error("Bad data length", E_USER_ERROR); - } - - $clean["digest"] = - Tests_Auth_OpenID_HMACSHA1::_strConvert($case["digest"]); - if (strlen($clean["digest"]) != 20) { - $l = strlen($clean["digest"]); - trigger_error("Bad digest length: $l", E_USER_ERROR); - } - - $clean['test_case'] = $case['test_case']; - - $final[] = $clean; - } - return $final; - } - - function Tests_Auth_OpenID_HMACSHA1($name) - { - $this->setName($name); - $cases = $this->_readTestCases(); - foreach ($cases as $case) { - $test = new Tests_Auth_OpenID_HMACSHA1_TestCase( - $case['test_case'], - $case['key'], - $case['data'], - $case['digest'] - ); - - $digest = $case['digest']; - $this->addTest($test); - } - } -} - -?> diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/KVForm.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/KVForm.php deleted file mode 100644 index d6bcc7164..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/KVForm.php +++ /dev/null @@ -1,259 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'Auth/OpenID/KVForm.php'; - -$_Tests_Auth_OpenID_kverrors = null; -/** - * Keep a list of the logged errors - */ -function Tests_Auth_OpenID_kvHandleError($errno, $errmsg) -{ - global $_Tests_Auth_OpenID_kverrors; - $_Tests_Auth_OpenID_kverrors[] = $errmsg; -} - - -class Tests_Auth_OpenID_KVForm_TestCase extends PHPUnit_TestCase { - var $errs; - - function runTest() - { - // Re-set the number of logged errors - global $_Tests_Auth_OpenID_kverrors; - $_Tests_Auth_OpenID_kverrors = array(); - - set_error_handler("Tests_Auth_OpenID_kvHandleError"); - - $this->_runTest(); - - // Check to make sure we have the expected number of logged errors - //$this->assertEquals($this->errs, count($_Tests_Auth_OpenID_kverrors)); - - restore_error_handler(); - } - - function _runTest() - { - trigger_error('Must be overridden', E_USER_ERROR); - } -} - -class Tests_Auth_OpenID_KVForm_TestCase_Parse -extends Tests_Auth_OpenID_KVForm_TestCase { - function Tests_Auth_OpenID_KVForm_TestCase_Parse( - $arr, $str, $lossy, $errs) - { - - $this->arr = $arr; - $this->str = $str; - $this->lossy = $lossy; - $this->errs = $errs; - } - - function _runTest() - { - // Do one parse, after which arrayToKV and kvToArray should be - // inverses. - $parsed1 = Auth_OpenID_KVForm::toArray($this->str); - $serial1 = Auth_OpenID_KVForm::fromArray($this->arr); - - if ($this->lossy == "neither" || $this->lossy == "str") { - $this->assertEquals($this->arr, $parsed1, "str was lossy"); - } - - if ($this->lossy == "neither" || $this->lossy == "arr") { - $this->assertEquals($this->str, $serial1, "array was lossy"); - } - - $parsed2 = Auth_OpenID_KVForm::toArray($serial1); - $serial2 = Auth_OpenID_KVForm::fromArray($parsed1); - - // Round-trip both - $parsed3 = Auth_OpenID_KVForm::toArray($serial2); - $serial3 = Auth_OpenID_KVForm::fromArray($parsed2); - - $this->assertEquals($serial2, $serial3, "serialized forms differ"); - - // Check to make sure that they're inverses. - $this->assertEquals($parsed2, $parsed3, "parsed forms differ"); - - } -} - -class Tests_Auth_OpenID_KVForm_TestCase_Null -extends Tests_Auth_OpenID_KVForm_TestCase { - function Tests_Auth_OpenID_KVForm_TestCase_Null($arr, $errs) - { - $this->arr = $arr; - $this->errs = $errs; - } - - function _runTest() - { - $serialized = Auth_OpenID_KVForm::fromArray($this->arr); - $this->assertTrue($serialized === null, - 'serialization unexpectedly succeeded'); - } -} - -class Tests_Auth_OpenID_KVForm extends PHPUnit_TestSuite { - function Tests_Auth_OpenID_KVForm($name) - { - $this->setName($name); - $testdata_list = array( - array("name" => "simple", - "str" => "college:harvey mudd\n", - "arr" => array("college" => "harvey mudd"), - ), - array("name" => "empty", - "str" => "", - "arr" => array(), - ), - array("name" => "empty (just newline)", - "str" => "\n", - "arr" => array(), - "lossy" => "str", - "errors" => 1, - ), - array("name" => "empty (double newline)", - "str" => "\n\n", - "arr" => array(), - "lossy" => "str", - "errors" => 2, - ), - array("name" => "empty (no colon)", - "str" => "East is least\n", - "arr" => array(), - "lossy" => "str", - "errors" => 1, - ), - array("name" => "two keys", - "str" => "city:claremont\nstate:CA\n", - "arr" => array('city' => 'claremont', - 'state' => 'CA'), - ), - array("name" => "real life", - "str" => "is_valid:true\ninvalidate_handle:" . - "{HMAC-SHA1:2398410938412093}\n", - "arr" => array('is_valid' => 'true', - 'invalidate_handle' => - '{HMAC-SHA1:2398410938412093}'), - ), - array("name" => "empty key and value", - "str" => ":\n", - "arr" => array(''=>''), - ), - array("name" => "empty key, not value", - "str" => ":missing key\n", - "arr" => array(''=>'missing key'), - ), - array("name" => "whitespace at front of key", - "str" => " street:foothill blvd\n", - "arr" => array('street'=>'foothill blvd'), - "lossy" => "str", - "errors" => 1, - ), - array("name" => "whitespace at front of value", - "str" => "major: computer science\n", - "arr" => array('major'=>'computer science'), - "lossy" => "str", - "errors" => 1, - ), - array("name" => "whitespace around key and value", - "str" => " dorm : east \n", - "arr" => array('dorm'=>'east'), - "lossy" => "str", - "errors" => 2, - ), - array("name" => "missing trailing newline", - "str" => "e^(i*pi)+1:0", - "arr" => array('e^(i*pi)+1'=>'0'), - "lossy" => "str", - "errors" => 1, - ), - array("name" => "missing trailing newline (two key)", - "str" => "east:west\nnorth:south", - "arr" => array('east'=>'west', - 'north'=>'south'), - "lossy" => "str", - "errors" => 1, - ), - array("name" => "colon in key", - "arr" => array("k:k" => 'v'), - "errors" => 1, - ), - array("name" => "newline in key", - "arr" => array("k\nk" => 'v'), - "errors" => 1, - ), - array("name" => "newline in value", - "arr" => array('k' => "v\nv"), - "errors" => 1, - ), - array("name" => "array whitespace", - "arr" => array(" k " => "v"), - "lossy" => "both", - "str" => " k :v\n", - "errors" => 2, - ), - array("name" => "array ordering 1", - "arr" => array("a" => "x", - "b" => "x", - "c" => "x"), - "str" => "a:x\nb:x\nc:x\n", - ), - array("name" => "array ordering 2", - "arr" => array("a" => "x", - "c" => "x", - "b" => "x"), - "str" => "a:x\nc:x\nb:x\n", - ), - ); - - foreach ($testdata_list as $testdata) { - if (isset($testdata['str'])) { - $str = $testdata['str']; - } else { - $str = null; - } - - $arr = $testdata["arr"]; - - if (isset($testdata['errors'])) { - $errs = $testdata["errors"]; - } else { - $errs = 0; - } - - if (is_null($str)) { - $test = new Tests_Auth_OpenID_KVForm_TestCase_Null($arr, $errs); - } else { - if (isset($testdata['lossy'])) { - $lossy = $testdata["lossy"]; - } else { - $lossy = 'neither'; - } - $test = new Tests_Auth_OpenID_KVForm_TestCase( - $arr, $str, $lossy, $errs); - } - $test->setName($testdata["name"]); - $this->addTest($test); - } - } -} - -?> diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/MemStore.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/MemStore.php deleted file mode 100644 index 660c2684a..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/MemStore.php +++ /dev/null @@ -1,110 +0,0 @@ -assocs = array(); - $this->nonces = array(); - $this->auth_key = $auth_key; - } - - function getKey($server_url, $handle) - { - return serialize(array($server_url, $handle)); - } - - function getAssocPairs() - { - $pairs = array(); - foreach ($this->assocs as $key => $assoc) { - list($assoc_url, $_) = unserialize($key); - $pairs[] = array($assoc_url, $assoc); - } - return $pairs; - } - - function getServerAssocs($server_url) - { - $matches = array(); - foreach ($this->getAssocPairs() as $pair) { - list($assoc_url, $assoc) = $pair; - if ($assoc_url == $server_url) { - $matches[] = $assoc; - } - } - return $matches; - } - - function getAssociation($server_url, $handle=null) - { - $assocs = $this->getServerAssocs($server_url); - if ($handle === null) { - $best = null; - foreach ($assocs as $assoc) { - if (!isset($best) || - $best->issued < $assoc->issued) { - - $best = $assoc; - } - } - return $best; - } else { - foreach ($assocs as $assoc) { - if ($assoc->handle == $handle) { - return $assoc; - } - } - return null; - } - } - - function storeAssociation($server_url, &$association) - { - $key = $this->getKey($server_url, $association->handle); - $this->assocs[$key] = $association; - } - - function removeAssociation($server_url, $handle) - { - $key = $this->getKey($server_url, $handle); - $present = isset($this->assocs[$key]); - unset($this->assocs[$key]); - return $present; - } - - function storeNonce($nonce) - { - if (!in_array($nonce, $this->nonces)) { - $this->nonces[] = $nonce; - } - } - - function useNonce($nonce) - { - $index = array_search($nonce, $this->nonces); - $present = $index !== false; - if ($present) { - unset($this->nonces[$index]); - } - return $present; - } - - function reset() - { - $this->assocs = array(); - $this->nonces = array(); - } - - function getAuthKey() - { - return $this->auth_key; - } -} \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/OpenID_Yadis.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/OpenID_Yadis.php deleted file mode 100644 index 605bb361e..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/OpenID_Yadis.php +++ /dev/null @@ -1,224 +0,0 @@ - - - -%s - - -'; - -// Different sets of server URLs for use in the URI tag -$__server_url_options = array( - array(), // This case should not generate an endpoint object - array('http://server.url/'), - array('https://server.url/'), - array('https://server.url/', 'http://server.url/'), - array('https://server.url/', - 'http://server.url/', - 'http://example.server.url/'), - ); - -// A couple of example extension type URIs. These are not at all -// official, but are just here for testing. -$__ext_types = array( - 'http://janrain.com/extension/blah', - 'http://openid.net/sreg/1.0'); - -// All valid combinations of Type tags that should produce an OpenID -// endpoint -$__openid_types = array( - _OPENID_1_0_TYPE, - _OPENID_1_1_TYPE, - _OPENID_1_2_TYPE); - -$temp = array(); -foreach (__subsets($__ext_types) as $exts) { - foreach (__subsets($__openid_types) as $ts) { - if ($ts) { - $temp[] = array_merge($exts, $ts); - } - } -} - -$__type_uri_options = $temp; - -// Range of valid Delegate tag values for generating test data -$__delegate_options = array( - null, - 'http://vanity.domain/', - 'https://somewhere/yadis/'); - -$temp = array(); -foreach ($__delegate_options as $delegate) { - foreach ($__type_uri_options as $type_uris) { - foreach ($__server_url_options as $uris) { - $temp[] = array($uris, $type_uris, $delegate); - } - } -} - -// All combinations of valid URIs, Type URIs and Delegate tags -$__data = $temp; - -function _mkXRDS($services_str) -{ - global $__XRDS_BOILERPLATE; - return sprintf($__XRDS_BOILERPLATE, $services_str); -} - -function _mkService($uris = null, $type_uris = null, - $delegate = null, $dent = ' ') -{ - $chunks = array($dent, "\n"); - $dent2 = $dent . ' '; - if ($type_uris) { - foreach ($type_uris as $type_uri) { - $chunks = array_merge($chunks, - array($dent2 . '', - $type_uri, "\n")); - } - } - - if ($uris) { - foreach ($uris as $uri) { - if (is_array($uri)) { - list($uri, $prio) = $uri; - } else { - $prio = null; - } - $chunks = array_merge($chunks, array($dent2, '', $uri, "\n")); - } - } - - if ($delegate) { - $chunks = array_merge($chunks, - array($dent2, '', - $delegate, "\n")); - } - - $chunks = array_merge($chunks, array($dent, "\n")); - - return implode("", $chunks); -} - -// Used for generating test data -function __subsets($list) -{ - // Generate all non-empty sublists of a list - $subsets_list = array(array()); - foreach ($list as $elem) { - - $temp = array(); - foreach ($subsets_list as $t) { - $temp[] = array_merge(array($elem), $t); - } - - $subsets_list = array_merge($subsets_list, $temp); - } - - return $subsets_list; -} - -class Tests_Auth_OpenID_Tester extends PHPUnit_TestCase { - function Tests_Auth_OpenID_Tester($uris, $type_uris, $delegate) - { - $this->uris = $uris; - $this->type_uris = $type_uris; - $this->delegate = $delegate; - parent::PHPUnit_TestCase(); - } - - function setUp() - { - $this->yadis_url = 'http://unit.test/'; - - // Create an XRDS document to parse - $services = _mkService($this->uris, - $this->type_uris, - $this->delegate); - $this->xrds = _mkXRDS($services); - } - - function runTest() - { - // Parse into endpoint objects that we will check - $xrds_object = Services_Yadis_XRDS::parseXRDS($this->xrds); - - $endpoints = array(); - - if ($xrds_object) { - $endpoints = $xrds_object->services(array('filter_MatchesAnyOpenIDType')); - $endpoints = Auth_OpenID_makeOpenIDEndpoints($this->yadis_url, $endpoints); - } - - // make sure there are the same number of endpoints as - // URIs. This assumes that the type_uris contains at least one - // OpenID type. - $this->assertEquals(count($this->uris), count($endpoints), - "URI <-> Endpoint count"); - - // So that we can check equality on the endpoint types - $type_uris = $this->type_uris; - sort($type_uris); - - - $seen_uris = array(); - foreach ($endpoints as $endpoint) { - $seen_uris[] = $endpoint->server_url; - - // All endpoints will have same yadis_url - $this->assertEquals($this->yadis_url, $endpoint->identity_url); - - // and delegate - $this->assertEquals($this->delegate, $endpoint->delegate); - - // and types - $actual_types = $endpoint->type_uris; - sort($actual_types); - $this->assertEquals($actual_types, $type_uris); - } - - // So that they will compare equal, because we don't care what - // order they are in - sort($seen_uris); - $uris = $this->uris; - sort($uris); - - // Make sure we saw all URIs, and saw each one once - $this->assertEquals($uris, $seen_uris); - } -} - -class Tests_Auth_OpenID_OpenID_Yadis extends PHPUnit_TestSuite { - function Tests_Auth_OpenID_OpenID_Yadis() - { - global $__data; - foreach ($__data as $case) { - $this->addTest(new Tests_Auth_OpenID_Tester($case[0], $case[1], $case[2])); - } - } - - function getName() - { - return 'Tests_Auth_OpenID_OpenID_Yadis'; - } - -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Parse.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Parse.php deleted file mode 100644 index 174865144..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Parse.php +++ /dev/null @@ -1,181 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'Tests/Auth/OpenID/TestUtil.php'; -require_once 'Auth/OpenID/Parse.php'; -require_once 'PHPUnit.php'; - -class Tests_Auth_OpenID_Link extends PHPUnit_TestCase { - function Tests_Auth_OpenID_Link($case) - { - list($desc, $markup, $links, $case_text) = $case; - $this->desc = $desc; - $this->markup = $markup; - $this->expected_links = $links; - $this->case_text = $case_text; - $this->parser = new Auth_OpenID_Parse(); - } - - function getName() - { - return $this->desc; - } - - function runTest() - { - $parsed = $this->parser->parseLinkAttrs($this->markup); - $i = 0; - - foreach ($this->expected_links as $expected) { - list($is_optional_link, $expected_link) = $expected; - if ($is_optional_link && - ($i >= count($parsed))) { - continue; - } - - $act_link = $parsed[$i]; - - $increment = true; - foreach ($expected_link as $attr => $data) { - list($is_optional_attr, $value) = $data; - - if ($is_optional_attr) { - $actual_value = null; - if (array_key_exists($attr, $act_link)) { - $actual_value = $act_link[$attr]; - } else { - continue; - } - } else { - $actual_value = $act_link[$attr]; - } - - if ($is_optional_link && - ($value != $actual_value)) { - $increment = false; - break; - } - - $this->assertEquals($value, $actual_value); - } - - if ($increment) { - $i++; - } - } - - $this->assertEquals($i, count($parsed)); - } -} - -class NumTestCases extends PHPUnit_TestCase { - function NumTestCases($test_cases, $num_tests) - { - $this->test_cases = $test_cases; - $this->num_tests = $num_tests; - } - - function runTest() - { - $this->assertEquals(count($this->test_cases), - $this->num_tests); - } -} - -class Tests_Auth_OpenID_Parse extends PHPUnit_TestSuite { - - function getName() - { - return "Tests_Auth_OpenID_Parse"; - } - - function _parseCheck($cond, $where) - { - if (!$cond) { - trigger_error('Parse error in ' . $where, E_USER_ERROR); - } - } - - function parseLink($line) - { - $parts = explode(" ", $line); - $optional = intval($parts[0] == 'Link*:'); - $this->_parseCheck($optional || ($parts[0] == 'Link:'), __FUNCTION__); - - $attrs = array(); - foreach (array_slice($parts, 1) as $attr) { - list($k, $v) = explode("=", $attr, 2); - if ($k[strlen($k) - 1] == '*') { - $attr_optional = 1; - $k = substr($k, 0, strlen($k) - 1); - } else { - $attr_optional = 0; - } - - $attrs[$k] = array($attr_optional, $v); - } - - return array($optional, $attrs); - } - - function parseCase($s) - { - list($header, $markup) = explode("\n\n", $s, 2); - $lines = explode("\n", $header); - $name = array_shift($lines); - $this->_parseCheck(strpos($name, 'Name: ') == 0, __FUNCTION__); - $desc = substr($name, 6); - $parsed = array(); - foreach ($lines as $line) { - $parsed[] = $this->parseLink($line); - } - - return array($desc, $markup, $parsed); - } - - function parseTests($s) - { - $tests = array(); - - $cases = explode("\n\n\n", $s); - $header = array_shift($cases); - list($tests_line, $unused) = explode("\n", $header, 2); - list($k, $v) = explode(": ", $tests_line); - $this->_parseCheck(('Num Tests' == $k), __FUNCTION__); - $num_tests = intval($v); - - foreach (array_slice($cases, 0, count($cases) - 1) as $case) { - list($desc, $markup, $links) = $this->parseCase($case); - $tests[] = array($desc, $markup, $links, $case); - } - - return array($num_tests, $tests); - } - - function Tests_Auth_OpenID_Parse() - { - $test_data = Tests_Auth_OpenID_readdata('linkparse.txt'); - - list($num_tests, $test_cases) = $this->parseTests($test_data); - - $this->addTest(new NumTestCases($test_cases, $num_tests)); - - foreach ($test_cases as $case) { - $this->addTest(new Tests_Auth_OpenID_Link($case)); - } - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Server.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Server.php deleted file mode 100644 index 231272b52..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Server.php +++ /dev/null @@ -1,1391 +0,0 @@ -init("1423261515703355186607439952816216983770". - "5735494988446894302176757360889904836136". - "0422513557553514790045512299468953431585". - "3008125488594198571710943663581589034331". - "6791551733211386105974742540867014420109". - "9811846875730766487278261498262568348338". - "4764372005569983660877797099908075182915". - "81860338635288400119293970087" - ); - } - - return $num; -} - -$ALT_GEN = 5; - -function arrayToString($arr) -{ - $s = "Array("; - - $parts = array(); - foreach ($arr as $k => $v) { - if (is_array($v)) { - $v = arrayToString($v); - } - $parts[] = sprintf("%s => %s", $k, $v); - } - - $s .= implode(", ", $parts); - $s .= ")"; - - return $s; -} - -function _Auth_OpenID_NotAuthorized() -{ - return false; -} - -class Tests_Auth_OpenID_Test_ServerError extends PHPUnit_TestCase { - function test_browserWithReturnTo() - { - $return_to = "http://rp.unittest/consumer"; - // will be a ProtocolError raised by Decode or CheckIDRequest.answer - $args = array( - 'openid.mode' => 'monkeydance', - 'openid.identity' => 'http://wagu.unittest/', - 'openid.return_to' => $return_to); - $e = new Auth_OpenID_ServerError($args, "plucky"); - $this->assertTrue($e->hasReturnTo()); - $expected_args = array( - 'openid.mode' => 'error', - 'openid.error' => 'plucky'); - - $encoded = $e->encodeToURL(); - if (_isError($encoded)) { - $this->fail($encoded->toString()); - return; - } - - list($rt_base, $_result_args) = explode("?", $e->encodeToURL(), 2); - $result_args = array(); - parse_str($_result_args, $result_args); - $result_args = Auth_OpenID::fixArgs($result_args); - - $this->assertEquals($result_args, $expected_args); - } - - function test_noReturnTo() - { - // will be a ProtocolError raised by Decode or CheckIDRequest.answer - $args = array( - 'openid.mode' => 'zebradance', - 'openid.identity' => 'http://wagu.unittest/'); - - $e = new Auth_OpenID_ServerError($args, "waffles"); - $this->assertFalse($e->hasReturnTo()); - $expected = "error:waffles\nmode:error\n"; - $this->assertEquals($e->encodeToKVForm(), $expected); - } -} - -class Tests_Auth_OpenID_Test_Decode extends PHPUnit_TestCase { - function setUp() - { - $this->id_url = "http://decoder.am.unittest/"; - $this->rt_url = "http://rp.unittest/foobot/?qux=zam"; - $this->tr_url = "http://rp.unittest/"; - $this->assoc_handle = "{assoc}{handle}"; - $this->decoder = new Auth_OpenID_Decoder(); - } - - function test_none() - { - $args = array(); - $r = $this->decoder->decode($args); - $this->assertEquals($r, null); - } - - function test_irrelevant() - { - $args = array( - 'pony' => 'spotted', - 'sreg.mutant_power' => 'decaffinator'); - - $r = $this->decoder->decode($args); - - $this->assertTrue($r === null); - } - - function test_bad() - { - $args = array( - 'openid.mode' => 'twos-compliment', - 'openid.pants' => 'zippered'); - - // Be sure that decoding the args returns an error. - $result = $this->decoder->decode($args); - - $this->assertTrue(_isError($result)); - } - - function test_checkidImmediate() - { - $args = array( - 'openid.mode' => 'checkid_immediate', - 'openid.identity' => $this->id_url, - 'openid.assoc_handle' => $this->assoc_handle, - 'openid.return_to' => $this->rt_url, - 'openid.trust_root' => $this->tr_url, - # should be ignored - 'openid.some.extension' => 'junk'); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_CheckIDRequest')); - $this->assertEquals($r->mode, "checkid_immediate"); - $this->assertEquals($r->immediate, true); - $this->assertEquals($r->identity, $this->id_url); - $this->assertEquals($r->trust_root, $this->tr_url); - $this->assertEquals($r->return_to, $this->rt_url); - $this->assertEquals($r->assoc_handle, $this->assoc_handle); - } - - function test_checkidSetup() - { - $args = array( - 'openid.mode' => 'checkid_setup', - 'openid.identity' => $this->id_url, - 'openid.assoc_handle' => $this->assoc_handle, - 'openid.return_to' => $this->rt_url, - 'openid.trust_root' => $this->tr_url); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_CheckIDRequest')); - $this->assertEquals($r->mode, "checkid_setup"); - $this->assertEquals($r->immediate, false); - $this->assertEquals($r->identity, $this->id_url); - $this->assertEquals($r->trust_root, $this->tr_url); - $this->assertEquals($r->return_to, $this->rt_url); - } - - function test_checkidSetupNoIdentity() - { - $args = array( - 'openid.mode' => 'checkid_setup', - 'openid.assoc_handle' => $this->assoc_handle, - 'openid.return_to' => $this->rt_url, - 'openid.trust_root' => $this->tr_url); - - $result = $this->decoder->decode($args); - if (_isError($result)) { - $this->assertTrue($result->query); - } else { - $this->fail(sprintf("Expected Auth_OpenID_Error, instead " . - "returned with %s", gettype($result))); - } - } - - function test_checkidSetupNoReturn() - { - $args = array( - 'openid.mode' => 'checkid_setup', - 'openid.identity' => $this->id_url, - 'openid.assoc_handle' => $this->assoc_handle, - 'openid.trust_root' => $this->tr_url); - - $result = $this->decoder->decode($args); - if (!_isError($result)) { - $this->fail("Expected Auth_OpenID_Error"); - } - } - - function test_checkidSetupBadReturn() - { - $args = array( - 'openid.mode' => 'checkid_setup', - 'openid.identity' => $this->id_url, - 'openid.assoc_handle' => $this->assoc_handle, - 'openid.return_to' => 'not a url'); - - $result = $this->decoder->decode($args);; - if (_isError($result)) { - $this->assertTrue($result->query); - } else { - $this->fail(sprintf("Expected ProtocolError, instead " . - "returned with %s", gettype($result))); - } - } - - function test_checkAuth() - { - $args = array( - 'openid.mode' => 'check_authentication', - 'openid.assoc_handle' => '{dumb}{handle}', - 'openid.sig' => 'sigblob', - 'openid.signed' => 'foo,bar,mode', - 'openid.foo' => 'signedval1', - 'openid.bar' => 'signedval2', - 'openid.baz' => 'unsigned'); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_CheckAuthRequest')); - $this->assertEquals($r->mode, 'check_authentication'); - $this->assertEquals($r->sig, 'sigblob'); - $this->assertEquals($r->signed, array( - array('foo', 'signedval1'), - array('bar', 'signedval2'), - array('mode', 'id_res'))); - } - - function test_checkAuthMissingSignedField() - { - $args = array( - 'openid.mode' => 'check_authentication', - 'openid.assoc_handle' => '{dumb}{handle}', - 'openid.sig' => 'sigblob', - 'openid.signed' => 'foo,bar,mode', - 'openid.foo' => 'signedval1', - 'openid.baz' => 'unsigned'); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_ServerError')); - } - - function test_checkAuthMissingSignature() - { - $args = array( - 'openid.mode' => 'check_authentication', - 'openid.assoc_handle' => '{dumb}{handle}', - 'openid.signed' => 'foo,bar,mode', - 'openid.foo' => 'signedval1', - 'openid.bar' => 'signedval2', - 'openid.baz' => 'unsigned'); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_ServerError')); - } - - function test_checkAuthAndInvalidate() - { - $args = array( - 'openid.mode' => 'check_authentication', - 'openid.assoc_handle' => '{dumb}{handle}', - 'openid.invalidate_handle' => '[[SMART_handle]]', - 'openid.sig' => 'sigblob', - 'openid.signed' => 'foo,bar,mode', - 'openid.foo' => 'signedval1', - 'openid.bar' => 'signedval2', - 'openid.baz' => 'unsigned'); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_CheckAuthRequest')); - $this->assertEquals($r->invalidate_handle, '[[SMART_handle]]'); - } - - function test_associateDH() - { - if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) { - $args = array( - 'openid.mode' => 'associate', - 'openid.session_type' => 'DH-SHA1', - 'openid.dh_consumer_public' => "Rzup9265tw=="); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_AssociateRequest')); - $this->assertEquals($r->mode, "associate"); - $this->assertEquals($r->session->session_type, "DH-SHA1"); - $this->assertEquals($r->assoc_type, "HMAC-SHA1"); - $this->assertTrue($r->session->consumer_pubkey); - } - } - - function test_associateDHMissingKey() - { - $args = array( - 'openid.mode' => 'associate', - 'openid.session_type' => 'DH-SHA1'); - - // Using DH-SHA1 without supplying dh_consumer_public is an error. - $result = $this->decoder->decode($args); - if (!_isError($result)) { - $this->fail(sprintf("Expected Auth_OpenID_ServerError, got %s", - gettype($result))); - } - } - - /** - * XXX: Cannot produce a value to break base64_decode - function test_associateDHpubKeyNotB64() - { - $args = array( - 'openid.mode' => 'associate', - 'openid.session_type' => 'DH-SHA1', - 'openid.dh_consumer_public' => "donkeydonkeydonkey"); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_ServerError')); - } - */ - - function test_associateDHModGen() - { - global $ALT_GEN; - - // test dh with non-default but valid values for dh_modulus - // and dh_gen - $lib =& Auth_OpenID_getMathLib(); - - $args = array( - 'openid.mode' => 'associate', - 'openid.session_type' => 'DH-SHA1', - 'openid.dh_consumer_public' => "Rzup9265tw==", - 'openid.dh_modulus' => $lib->longToBase64(altModulus()), - 'openid.dh_gen' => $lib->longToBase64($ALT_GEN)); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_AssociateRequest')); - $this->assertEquals($r->mode, "associate"); - $this->assertEquals($r->session->session_type, "DH-SHA1"); - $this->assertEquals($r->assoc_type, "HMAC-SHA1"); - $this->assertTrue($lib->cmp($r->session->dh->mod, altModulus()) === 0); - $this->assertTrue($lib->cmp($r->session->dh->gen, $ALT_GEN) === 0); - $this->assertTrue($r->session->consumer_pubkey); - } - - /** - * XXX: Can't test invalid base64 values for mod and gen because - * PHP's base64 decoder is much too forgiving or just plain - * broken. - function test_associateDHCorruptModGen() - { - // test dh with non-default but valid values for dh_modulus - // and dh_gen - $args = array( - 'openid.mode' => 'associate', - 'openid.session_type' => 'DH-SHA1', - 'openid.dh_consumer_public' => "Rzup9265tw==", - 'openid.dh_modulus' => 'pizza', - 'openid.dh_gen' => 'gnocchi'); - - $r = $this->decoder->decode($args); - print_r($r); - - $this->assertTrue(is_a($r, 'Auth_OpenID_ServerError')); - } - */ - - function test_associateDHMissingModGen() - { - // test dh with non-default but valid values for dh_modulus - // and dh_gen - $args = array( - 'openid.mode' => 'associate', - 'openid.session_type' => 'DH-SHA1', - 'openid.dh_consumer_public' => "Rzup9265tw==", - 'openid.dh_modulus' => 'pizza'); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_ServerError')); - } - - function test_associateWeirdSession() - { - $args = array( - 'openid.mode' => 'associate', - 'openid.session_type' => 'FLCL6', - 'openid.dh_consumer_public' => "YQ==\n"); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_ServerError')); - } - - function test_associatePlain() - { - $args = array('openid.mode' => 'associate'); - - $r = $this->decoder->decode($args); - $this->assertTrue(is_a($r, 'Auth_OpenID_AssociateRequest')); - $this->assertEquals($r->mode, "associate"); - $this->assertEquals($r->session->session_type, "plaintext"); - $this->assertEquals($r->assoc_type, "HMAC-SHA1"); - } - - function test_nomode() - { - $args = array( - 'openid.session_type' => 'DH-SHA1', - 'openid.dh_consumer_public' => "my public keeey"); - - $result = $this->decoder->decode($args); - if (!_isError($result)) { - $this->fail(sprintf("Expected Auth_OpenID_Error", - gettype($result))); - } - } -} - -class Tests_Auth_OpenID_Test_Encode extends PHPUnit_TestCase { - function setUp() - { - $this->encoder = new Auth_OpenID_Encoder(); - $this->encode = $this->encoder; - } - - function test_id_res() - { - $request = new Auth_OpenID_CheckIDRequest( - 'http://bombom.unittest/', - 'http://burr.unittest/', - 'http://burr.unittest/999', - false); - - $response = new Auth_OpenID_CheckIDResponse($request); - $response->fields = array( - 'mode' => 'id_res', - 'identity' => $request->identity, - 'return_to' => $request->return_to); - - $webresponse = $this->encoder->encode($response); - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_REDIRECT); - $this->assertTrue(array_key_exists('location', - $webresponse->headers)); - - $location = $webresponse->headers['location']; - $this->assertTrue(strpos($location, $request->return_to) === 0); - // "%s does not start with %s" % ($location, - // $request->return_to)); - - $parsed = parse_url($location); - $query = array(); - parse_str($parsed['query'], $query); - $query = Auth_OpenID::fixArgs($query); - - $expected = array(); - - foreach ($response->fields as $k => $v) { - $expected['openid.' . $k] = $v; - } - - $this->assertEquals($query, $expected); - } - - function test_cancel() - { - $request = new Auth_OpenID_CheckIDRequest( - 'http://bombom.unittest/', - 'http://burr.unittest/', - 'http://burr.unittest/999', - false); - - $response = new Auth_OpenID_CheckIDResponse($request); - $response->fields = array('mode' => 'cancel'); - - $webresponse = $this->encoder->encode($response); - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_REDIRECT); - $this->assertTrue(array_key_exists('location', $webresponse->headers)); - } - - function test_assocReply() - { - if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) { - $request = Auth_OpenID_AssociateRequest::fromQuery(array()); - $response = new Auth_OpenID_ServerResponse($request); - $response->fields = array('assoc_handle' => "every-zig"); - $webresponse = $this->encoder->encode($response); - $body = "assoc_handle:every-zig\n"; - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_OK); - $this->assertEquals($webresponse->headers, array()); - $this->assertEquals($webresponse->body, $body); - } - } - - function test_checkauthReply() - { - $request = new Auth_OpenID_CheckAuthRequest('a_sock_monkey', - 'siggggg', - array()); - $response = new Auth_OpenID_ServerResponse($request); - $response->fields = array( - 'is_valid' => 'true', - 'invalidate_handle' => 'xXxX:xXXx'); - - $body = "invalidate_handle:xXxX:xXXx\nis_valid:true\n"; - $webresponse = $this->encoder->encode($response); - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_OK); - $this->assertEquals($webresponse->headers, array()); - $this->assertEquals($webresponse->body, $body); - } - - function test_unencodableError() - { - $args = array('openid.identity' => 'http://limu.unittest/'); - - $e = new Auth_OpenID_ServerError($args, "wet paint"); - - $result = $this->encoder->encode($e); - if (!_isError($result, 'Auth_OpenID_EncodingError')) { - $this->fail(sprintf("Expected Auth_OpenID_ServerError, got %s", - gettype($result))); - } - } - - function test_encodableError() - { - $args = array( - 'openid.mode' => 'associate', - 'openid.identity' => 'http://limu.unittest/'); - - $body="error:snoot\nmode:error\n"; - $err = new Auth_OpenID_ServerError($args, "snoot"); - $webresponse = $this->encoder->encode($err); - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_ERROR); - $this->assertEquals($webresponse->headers, array()); - $this->assertEquals($webresponse->body, $body); - } -} - -class Tests_Auth_OpenID_SigningEncode extends PHPUnit_TestCase { - function setUp() - { - // Use filestore here instead of memstore - $this->store = new Tests_Auth_OpenID_MemStore(); - - $this->request = new Auth_OpenID_CheckIDRequest( - 'http://bombom.unittest/', - 'http://burr.unittest/', - 'http://burr.unittest/999', - false); - - $this->response = new Auth_OpenID_CheckIDResponse($this->request); - $this->response->fields = array( - 'mode' => 'id_res', - 'identity' => $this->request->identity, - 'return_to' => $this->request->return_to); - - $this->signatory = new Auth_OpenID_Signatory($this->store); - $this->dumb_key = $this->signatory->dumb_key; - $this->normal_key = $this->signatory->normal_key; - - $this->encoder = new Auth_OpenID_SigningEncoder($this->signatory); - } - - function test_idres() - { - $assoc_handle = '{bicycle}{shed}'; - $assoc = Auth_OpenID_Association::fromExpiresIn(60, $assoc_handle, - 'sekrit', 'HMAC-SHA1'); - $this->store->storeAssociation($this->normal_key, $assoc); - $this->request->assoc_handle = $assoc_handle; - $webresponse = $this->encoder->encode($this->response); - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_REDIRECT); - $this->assertTrue(array_key_exists('location', - $webresponse->headers)); - - $location = $webresponse->headers['location']; - $parsed = parse_url($location); - $query = array(); - parse_str($parsed['query'], $query); - $query = Auth_OpenID::fixArgs($query); - - $this->assertTrue(array_key_exists('openid.sig', $query)); - $this->assertTrue(array_key_exists('openid.assoc_handle', $query)); - $this->assertTrue(array_key_exists('openid.signed', $query)); - } - - function test_idresDumb() - { - $webresponse = $this->encoder->encode($this->response); - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_REDIRECT); - $this->assertTrue(array_key_exists('location', $webresponse->headers)); - - $location = $webresponse->headers['location']; - $parsed = parse_url($location); - $query = array(); - parse_str($parsed['query'], $query); - $query = Auth_OpenID::fixArgs($query); - $this->assertTrue(array_key_exists('openid.sig', $query)); - $this->assertTrue(array_key_exists('openid.assoc_handle', $query)); - $this->assertTrue(array_key_exists('openid.signed', $query)); - } - - function test_forgotStore() - { - $this->encoder->signatory = null; - $result = $this->encoder->encode($this->response); - if (!is_a($result, 'Auth_OpenID_ServerError')) { - $this->fail(sprintf("Expected Auth_OpenID_ServerError, got %s", - gettype($result))); - } - } - - function test_cancel() - { - $request = new Auth_OpenID_CheckIDRequest( - 'http://bombom.unittest/', - 'http://burr.unittest/', - 'http://burr.unittest/999', - false); - - $response = new Auth_OpenID_CheckIDResponse($request, 'cancel'); - $webresponse = $this->encoder->encode($response); - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_REDIRECT); - $this->assertTrue(array_key_exists('location', $webresponse->headers)); - $location = $webresponse->headers['location']; - $parsed = parse_url($location); - $query = array(); - parse_str($parsed['query'], $query); - $query = Auth_OpenID::fixArgs($query); - $this->assertFalse(array_key_exists('openid.sig', $query)); - } - - function test_assocReply() - { - if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) { - $request = Auth_OpenID_AssociateRequest::fromQuery(array()); - $response = new Auth_OpenID_ServerResponse($request); - $response->fields = array('assoc_handle' => "every-zig"); - $webresponse = $this->encoder->encode($response); - $body = "assoc_handle:every-zig\n"; - - $this->assertEquals($webresponse->code, AUTH_OPENID_HTTP_OK); - $this->assertEquals($webresponse->headers, array()); - $this->assertEquals($webresponse->body, $body); - } - } - - function test_alreadySigned() - { - $this->response->fields['sig'] = 'priorSig=='; - $result = $this->encoder->encode($this->response); - if (!is_a($result, 'Auth_OpenID_AlreadySigned')) { - $this->fail(sprintf("Expected Auth_OpenID_AlreadySigned " . - "instance, got %s", gettype($result))); - } - } -} - -class Tests_Auth_OpenID_CheckID extends PHPUnit_TestCase { - function setUp() - { - $this->request = new Auth_OpenID_CheckIDRequest( - 'http://bambam.unittest/', - 'http://bar.unittest/999', - 'http://bar.unittest/', - false); - } - - function test_trustRootInvalid() - { - $this->request->trust_root = "http://foo.unittest/17"; - $this->request->return_to = "http://foo.unittest/39"; - $this->assertFalse($this->request->trustRootValid()); - } - - function test_trustRootValid() - { - $this->request->trust_root = "http://foo.unittest/"; - $this->request->return_to = "http://foo.unittest/39"; - $this->assertTrue($this->request->trustRootValid()); - } - - function test_answerToInvalidRoot() - { - $this->request->trust_root = "http://foo.unittest/17"; - $this->request->return_to = "http://foo.unittest/39"; - $result = $this->request->answer(true); - if (!is_a($result, 'Auth_OpenID_UntrustedReturnURL')) { - $this->fail(sprintf("Expected Auth_OpenID_UntrustedReturnURL, " . - "got %s", gettype($result))); - } - $this->assertTrue($this->request->answer(false)); - } - - function test_answerAllow() - { - $answer = $this->request->answer(true); - - if (_isError($answer)) { - $this->fail($answer->toString()); - return; - } - - $this->assertEquals($answer->request, $this->request); - $this->assertEquals($answer->fields, array( - 'mode' => 'id_res', - 'identity' => $this->request->identity, - 'return_to' => $this->request->return_to)); - - $this->assertEquals($answer->signed, - array("mode", "identity", "return_to")); - } - - function test_answerAllowNoTrustRoot() - { - $this->request->trust_root = null; - $answer = $this->request->answer(true); - $this->assertEquals($answer->request, $this->request); - $this->assertEquals($answer->fields, array( - 'mode' => 'id_res', - 'identity' => $this->request->identity, - 'return_to' => $this->request->return_to)); - - $this->assertEquals($answer->signed, - array("mode", "identity", "return_to")); - } - - function test_answerImmediateDeny() - { - $this->request->mode = 'checkid_immediate'; - $this->request->immediate = true; - $server_url = "http://setup-url.unittest/"; - $answer = $this->request->answer(false, $server_url); - $this->assertEquals($answer->request, $this->request); - $this->assertEquals(count($answer->fields), 2); - $this->assertEquals(Auth_OpenID::arrayGet($answer->fields, 'mode'), - 'id_res'); - $this->assertTrue(strpos(Auth_OpenID::arrayGet($answer->fields, - 'user_setup_url'), - $server_url) == 0); - - $this->assertEquals($answer->signed, array()); - } - - function test_answerSetupDeny() - { - $answer = $this->request->answer(false); - $this->assertEquals($answer->fields, array('mode' => 'cancel')); - $this->assertEquals($answer->signed, array()); - } - - function test_getCancelURL() - { - $url = $this->request->getCancelURL(); - $expected = $this->request->return_to . '?openid.mode=cancel'; - $this->assertEquals($url, $expected); - } - - function test_getCancelURLimmed() - { - $this->request->mode = 'checkid_immediate'; - $this->request->immediate = true; - $result = $this->request->getCancelURL(); - if (!is_a($result, 'Auth_OpenID_ServerError')) { - $this->fail(sprintf("Expected Auth_OpenID_ServerError, got %s", - gettype($result))); - } - } -} - -class Tests_Auth_OpenID_CheckIDExtension extends PHPUnit_TestCase { - - function setUp() - { - $this->request = new Auth_OpenID_CheckIDRequest( - 'http://bambam.unittest/', - 'http://bar.unittest/', - 'http://bar.unittest/999', - false); - - $this->response = new Auth_OpenID_CheckIDResponse($this->request); - $this->response->fields['blue'] = 'star'; - } - - function test_addField() - { - $namespace = 'mj12'; - $this->response->addField($namespace, 'bright', 'potato'); - $this->assertEquals($this->response->fields, - array('blue' => 'star', - 'mode' => 'id_res', - 'mj12.bright' => 'potato')); - $this->assertEquals($this->response->signed, - array('mode', 'identity', 'return_to', - 'mj12.bright')); - } - - function test_addFieldUnsigned() - { - $namespace = 'mj12'; - $this->response->addField($namespace, 'dull', 'lemon', false); - $this->assertEquals($this->response->fields, - array('blue' => 'star', - 'mode' => 'id_res', - 'mj12.dull' => 'lemon')); - $this->assertEquals($this->response->signed, - array('mode', 'identity', 'return_to')); - } - - function test_addFields() - { - $namespace = 'mi5'; - $this->response->addFields($namespace, array('tangy' => 'suspenders', - 'bravo' => 'inclusion')); - $this->assertEquals($this->response->fields, - array('blue' => 'star', - 'mode' => 'id_res', - 'mi5.tangy' => 'suspenders', - 'mi5.bravo' => 'inclusion')); - $this->assertEquals($this->response->signed, - array('mode', 'identity', 'return_to', - 'mi5.tangy', 'mi5.bravo')); - } - - function test_addFieldsUnsigned() - { - $namespace = 'mi5'; - $this->response->addFields($namespace, array('strange' => 'conditioner', - 'elemental' => 'blender'), - false); - $this->assertEquals($this->response->fields, - array('blue' => 'star', - 'mode' => 'id_res', - 'mi5.strange' => 'conditioner', - 'mi5.elemental' => 'blender')); - $this->assertEquals($this->response->signed, - array('mode', 'identity', 'return_to')); - } - - function test_update() - { - $eresponse = new Auth_OpenID_ServerResponse(null); - $eresponse->fields = array('shape' => 'heart', - 'content' => 'strings,wire'); - $eresponse->signed = array('content'); - $this->response->update('box', $eresponse); - $this->assertEquals($this->response->fields, - array('blue' => 'star', - 'mode' => 'id_res', - 'box.shape' => 'heart', - 'box.content' => 'strings,wire')); - $this->assertEquals($this->response->signed, - array('mode', 'identity', 'return_to', 'content')); - } -} - -class _MockSignatory { - var $isValid = true; - - function _MockSignatory($assoc) - { - $this->assocs = array($assoc); - } - - function verify($assoc_handle, $sig, $signed_pairs) - { - if (!$sig) { - return false; - } - - if (!is_array($signed_pairs)) { - return false; - } - - if (in_array(array(true, $assoc_handle), $this->assocs)) { - return $this->isValid; - } else { - return false; - } - } - - function getAssociation($assoc_handle, $dumb) - { - if (in_array(array($dumb, $assoc_handle), $this->assocs)) { - // This isn't a valid implementation for many uses of this - // function, mind you. - return true; - } else { - return null; - } - } - - function invalidate($assoc_handle, $dumb) - { - if (in_array(array($dumb, $assoc_handle), $this->assocs)) { - $i = 0; - foreach ($this->assocs as $pair) { - if ($pair == array($dumb, $assoc_handle)) { - unset($this->assocs[$i]); - break; - } - $i++; - } - } - } -} - -class Tests_Auth_OpenID_CheckAuth extends PHPUnit_TestCase { - function setUp() - { - $this->assoc_handle = 'mooooooooo'; - $this->request = new Auth_OpenID_CheckAuthRequest( - $this->assoc_handle, 'signarture', - array(array('one', 'alpha'), - array('two', 'beta'))); - - $this->signatory = new _MockSignatory(array(true, $this->assoc_handle)); - } - - function test_valid() - { - $r = $this->request->answer($this->signatory); - $this->assertEquals($r->fields, array('is_valid' => 'true')); - $this->assertEquals($r->request, $this->request); - } - - function test_invalid() - { - $this->signatory->isValid = false; - $r = $this->request->answer($this->signatory); - $this->assertEquals($r->fields, array('is_valid' => 'false')); - } - - function test_replay() - { - $r = $this->request->answer($this->signatory); - $r = $this->request->answer($this->signatory); - $this->assertEquals($r->fields, array('is_valid' => 'false')); - } - - function test_invalidatehandle() - { - $this->request->invalidate_handle = "bogusHandle"; - $r = $this->request->answer($this->signatory); - $this->assertEquals($r->fields, - array('is_valid' => 'true', - 'invalidate_handle' => "bogusHandle")); - $this->assertEquals($r->request, $this->request); - } - - function test_invalidatehandleNo() - { - $assoc_handle = 'goodhandle'; - $this->signatory->assocs[] = array(false, 'goodhandle'); - $this->request->invalidate_handle = $assoc_handle; - $r = $this->request->answer($this->signatory); - $this->assertEquals($r->fields, array('is_valid' => 'true')); - } -} - -class Tests_Auth_OpenID_Associate extends PHPUnit_TestCase { - // TODO: test DH with non-default values for modulus and gen. - // (important to do because we actually had it broken for a - // while.) - - function setUp() - { - $this->request = Auth_OpenID_AssociateRequest::fromQuery(array()); - $this->store = new Tests_Auth_OpenID_MemStore(); - $this->signatory = new Auth_OpenID_Signatory($this->store); - $this->assoc = $this->signatory->createAssociation(false); - } - - function test_dh() - { - if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) { - $dh = new Auth_OpenID_DiffieHellman(); - $ml =& Auth_OpenID_getMathLib(); - - $cpub = $dh->public; - $session = new Auth_OpenID_DiffieHellmanServerSession( - new Auth_OpenID_DiffieHellman(), - $cpub); - - $this->request = new Auth_OpenID_AssociateRequest($session); - $response = $this->request->answer($this->assoc); - - $this->assertEquals( - Auth_OpenID::arrayGet($response->fields, "assoc_type"), - "HMAC-SHA1"); - - $this->assertEquals( - Auth_OpenID::arrayGet($response->fields, "assoc_handle"), - $this->assoc->handle); - - $this->assertFalse( - Auth_OpenID::arrayGet($response->fields, "mac_key")); - - $this->assertEquals( - Auth_OpenID::arrayGet($response->fields, "session_type"), - "DH-SHA1"); - - $this->assertTrue( - Auth_OpenID::arrayGet($response->fields, "enc_mac_key")); - - $this->assertTrue( - Auth_OpenID::arrayGet($response->fields, - "dh_server_public")); - - $enc_key = base64_decode( - Auth_OpenID::arrayGet($response->fields, "enc_mac_key")); - - $spub = $ml->base64ToLong( - Auth_OpenID::arrayGet($response->fields, - "dh_server_public")); - - $secret = $dh->xorSecret($spub, $enc_key); - - $this->assertEquals($secret, $this->assoc->secret); - } - } - - function test_plaintext() - { - $response = $this->request->answer($this->assoc); - - $this->assertEquals( - Auth_OpenID::arrayGet($response->fields, "assoc_type"), - "HMAC-SHA1"); - - $this->assertEquals( - Auth_OpenID::arrayGet($response->fields, "assoc_handle"), - $this->assoc->handle); - - $this->assertEquals( - Auth_OpenID::arrayGet($response->fields, "expires_in"), - sprintf("%d", $this->signatory->SECRET_LIFETIME)); - - $this->assertEquals( - Auth_OpenID::arrayGet($response->fields, "mac_key"), - base64_encode($this->assoc->secret)); - - $this->assertFalse(Auth_OpenID::arrayGet($response->fields, - "session_type")); - - $this->assertFalse(Auth_OpenID::arrayGet($response->fields, - "enc_mac_key")); - - $this->assertFalse(Auth_OpenID::arrayGet($response->fields, - "dh_server_public")); - } -} - -class Counter { - function Counter() - { - $this->count = 0; - } - - function inc() - { - $this->count += 1; - } -} - -class Tests_Auth_OpenID_ServerTest extends PHPUnit_TestCase { - function setUp() - { - $this->store = new Tests_Auth_OpenID_MemStore(); - $this->server = new Auth_OpenID_Server($this->store); - } - - function test_associate() - { - if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) { - $request = Auth_OpenID_AssociateRequest::fromQuery(array()); - $response = $this->server->openid_associate($request); - $this->assertTrue(array_key_exists('assoc_handle', - $response->fields)); - } - } - - function test_checkAuth() - { - $request = new Auth_OpenID_CheckAuthRequest('arrrrrf', - '0x3999', array()); - - $response = $this->server->openid_check_authentication($request); - $this->assertTrue(array_key_exists('is_valid', - $response->fields)); - } -} - -class Tests_Auth_OpenID_Signatory extends PHPUnit_TestCase { - function setUp() - { - $this->store =& new Tests_Auth_OpenID_MemStore(); - $this->signatory =& new Auth_OpenID_Signatory($this->store); - $this->dumb_key = $this->signatory->dumb_key; - $this->normal_key = $this->signatory->normal_key; - } - - function test_sign() - { - $request = new Auth_OpenID_ServerRequest(); - $assoc_handle = '{assoc}{lookatme}'; - $assoc = Auth_OpenID_Association::fromExpiresIn(60, $assoc_handle, - 'sekrit', 'HMAC-SHA1'); - $this->store->storeAssociation($this->normal_key, $assoc); - $request->assoc_handle = $assoc_handle; - $response = new Auth_OpenID_CheckIDResponse($request); - $response->fields = array( - 'foo' => 'amsigned', - 'bar' => 'notsigned', - 'azu' => 'alsosigned'); - - $response->signed = array('foo', 'azu'); - $sresponse = $this->signatory->sign($response); - - $this->assertEquals(Auth_OpenID::arrayGet($sresponse->fields, - 'assoc_handle'), - $assoc_handle); - - $this->assertEquals(Auth_OpenID::arrayGet($sresponse->fields, 'signed'), - 'foo,azu'); - - $this->assertTrue(Auth_OpenID::arrayGet($sresponse->fields, 'sig')); - } - - function test_signDumb() - { - $request = new Auth_OpenID_ServerRequest(); - $request->assoc_handle = null; - $response = new Auth_OpenID_CheckIDResponse($request); - $response->fields = array( - 'foo' => 'amsigned', - 'bar' => 'notsigned', - 'azu' => 'alsosigned'); - - $response->signed = array('foo', 'azu'); - $sresponse = $this->signatory->sign($response); - - $assoc_handle = Auth_OpenID::arrayGet($sresponse->fields, - 'assoc_handle'); - - $this->assertTrue($assoc_handle); - $assoc = $this->signatory->getAssociation($assoc_handle, true); - - $this->assertTrue($assoc); - $this->assertEquals(Auth_OpenID::arrayGet($sresponse->fields, 'signed'), - 'foo,azu'); - $this->assertTrue(Auth_OpenID::arrayGet($sresponse->fields, 'sig')); - } - - function test_signExpired() - { - $request = new Auth_OpenID_ServerRequest(); - $assoc_handle = '{assoc}{lookatme}'; - $assoc = Auth_OpenID_Association::fromExpiresIn(-10, $assoc_handle, - 'sekrit', 'HMAC-SHA1'); - $this->store->storeAssociation($this->normal_key, $assoc); - $this->assertTrue($this->store->getAssociation($this->normal_key, - $assoc_handle)); - - $request->assoc_handle = $assoc_handle; - $response = new Auth_OpenID_CheckIDResponse($request); - $response->fields = array( - 'foo' => 'amsigned', - 'bar' => 'notsigned', - 'azu' => 'alsosigned'); - - $response->signed = array('foo', 'azu'); - $sresponse = $this->signatory->sign($response); - - $new_assoc_handle = Auth_OpenID::arrayGet($sresponse->fields, - 'assoc_handle'); - $this->assertTrue($new_assoc_handle); - $this->assertFalse($new_assoc_handle == $assoc_handle); - - $this->assertEquals(Auth_OpenID::arrayGet($sresponse->fields, - 'invalidate_handle'), - $assoc_handle); - - $this->assertEquals(Auth_OpenID::arrayGet($sresponse->fields, 'signed'), - 'foo,azu'); - $this->assertTrue(Auth_OpenID::arrayGet($sresponse->fields, 'sig')); - - // make sure the expired association is gone - $this->assertFalse($this->store->getAssociation($this->normal_key, - $assoc_handle)); - - // make sure the new key is a dumb mode association - $this->assertTrue($this->store->getAssociation($this->dumb_key, - $new_assoc_handle)); - - $this->assertFalse($this->store->getAssociation($this->normal_key, - $new_assoc_handle)); - } - - function test_signInvalidHandle() - { - $request = new Auth_OpenID_ServerRequest(); - $assoc_handle = '{bogus-assoc}{notvalid}'; - - $request->assoc_handle = $assoc_handle; - $response = new Auth_OpenID_CheckIDResponse($request); - $response->fields = array( - 'foo' => 'amsigned', - 'bar' => 'notsigned', - 'azu' => 'alsosigned'); - - $response->signed = array('foo', 'azu'); - $sresponse = $this->signatory->sign($response); - - $new_assoc_handle = Auth_OpenID::arrayGet($sresponse->fields, - 'assoc_handle'); - - $this->assertTrue($new_assoc_handle); - $this->assertFalse($new_assoc_handle == $assoc_handle); - - $this->assertEquals(Auth_OpenID::arrayGet($sresponse->fields, - 'invalidate_handle'), - $assoc_handle); - - $this->assertEquals(Auth_OpenID::arrayGet($sresponse->fields, 'signed'), - 'foo,azu'); - $this->assertTrue(Auth_OpenID::arrayGet($sresponse->fields, 'sig')); - - // make sure the new key is a dumb mode association - $this->assertTrue($this->store->getAssociation($this->dumb_key, - $new_assoc_handle)); - - $this->assertFalse($this->store->getAssociation($this->normal_key, - $new_assoc_handle)); - } - - function test_verify() - { - $assoc_handle = '{vroom}{zoom}'; - $assoc = Auth_OpenID_Association::fromExpiresIn(60, $assoc_handle, - 'sekrit', 'HMAC-SHA1'); - - $this->store->storeAssociation($this->dumb_key, $assoc); - - $signed_pairs = array(array('foo', 'bar'), - array('apple', 'orange')); - - $sig = "Ylu0KcIR7PvNegB/K41KpnRgJl0="; - $verified = $this->signatory->verify($assoc_handle, $sig, - $signed_pairs); - $this->assertTrue($verified); - } - - function test_verifyBadSig() - { - $assoc_handle = '{vroom}{zoom}'; - $assoc = Auth_OpenID_Association::fromExpiresIn(60, $assoc_handle, - 'sekrit', 'HMAC-SHA1'); - - $this->store->storeAssociation($this->dumb_key, $assoc); - - $signed_pairs = array(array('foo', 'bar'), - array('apple', 'orange')); - - $sig = str_rot13("Ylu0KcIR7PvNegB/K41KpnRgJl0="); - $verified = $this->signatory->verify($assoc_handle, $sig, - $signed_pairs); - - $this->assertFalse($verified); - } - - function test_verifyBadHandle() - { - $assoc_handle = '{vroom}{zoom}'; - $signed_pairs = array(array('foo', 'bar'), - array('apple', 'orange')); - - $sig = "Ylu0KcIR7PvNegB/K41KpnRgJl0="; - $verified = $this->signatory->verify($assoc_handle, $sig, - $signed_pairs); - $this->assertFalse($verified); - } - - function test_getAssoc() - { - $assoc_handle = $this->makeAssoc(true); - $assoc = $this->signatory->getAssociation($assoc_handle, true); - $this->assertTrue($assoc); - $this->assertEquals($assoc->handle, $assoc_handle); - } - - function test_getAssocExpired() - { - $assoc_handle = $this->makeAssoc(true, -10); - $assoc = $this->signatory->getAssociation($assoc_handle, true); - $this->assertFalse($assoc); - } - - function test_getAssocInvalid() - { - $ah = 'no-such-handle'; - $this->assertEquals( - $this->signatory->getAssociation($ah, false), null); - } - - function test_getAssocDumbVsNormal() - { - $assoc_handle = $this->makeAssoc(true); - $this->assertEquals( - $this->signatory->getAssociation($assoc_handle, false), null); - } - - function test_createAssociation() - { - $assoc = $this->signatory->createAssociation(false); - $this->assertTrue($this->signatory->getAssociation($assoc->handle, - false)); - } - - function makeAssoc($dumb, $lifetime = 60) - { - $assoc_handle = '{bling}'; - $assoc = Auth_OpenID_Association::fromExpiresIn( - $lifetime, $assoc_handle, - 'sekrit', 'HMAC-SHA1'); - - $this->store->storeAssociation((($dumb) ? $this->dumb_key : - $this->normal_key), $assoc); - return $assoc_handle; - } - - function test_invalidate() - { - $assoc_handle = '-squash-'; - $assoc = Auth_OpenID_Association::fromExpiresIn(60, $assoc_handle, - 'sekrit', 'HMAC-SHA1'); - - $this->store->storeAssociation($this->dumb_key, $assoc); - $assoc = $this->signatory->getAssociation($assoc_handle, true); - $this->assertTrue($assoc); - $assoc = $this->signatory->getAssociation($assoc_handle, true); - $this->assertTrue($assoc); - $this->signatory->invalidate($assoc_handle, true); - $assoc = $this->signatory->getAssociation($assoc_handle, true); - $this->assertFalse($assoc); - } -} - -class Tests_Auth_OpenID_Server extends PHPUnit_TestSuite { - - function getName() - { - return "Tests_Auth_OpenID_Server"; - } - - function Tests_Auth_OpenID_Server() - { - $this->addTestSuite('Tests_Auth_OpenID_Signatory'); - $this->addTestSuite('Tests_Auth_OpenID_ServerTest'); - if (!defined('Auth_OpenID_NO_MATH_SUPPORT')) { - $this->addTestSuite('Tests_Auth_OpenID_Associate'); - } - $this->addTestSuite('Tests_Auth_OpenID_CheckAuth'); - $this->addTestSuite('Tests_Auth_OpenID_CheckIDExtension'); - $this->addTestSuite('Tests_Auth_OpenID_CheckAuth'); - $this->addTestSuite('Tests_Auth_OpenID_SigningEncode'); - $this->addTestSuite('Tests_Auth_OpenID_Test_Encode'); - $this->addTestSuite('Tests_Auth_OpenID_Test_Decode'); - $this->addTestSuite('Tests_Auth_OpenID_Test_ServerError'); - $this->addTestSuite('Tests_Auth_OpenID_CheckID'); - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/StoreTest.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/StoreTest.php deleted file mode 100644 index 3943c8f1e..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/StoreTest.php +++ /dev/null @@ -1,574 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -/** - * Require classes and functions to run the Store tests. - */ -require_once 'Auth/OpenID/Association.php'; -require_once 'Auth/OpenID/CryptUtil.php'; -require_once 'Auth/OpenID.php'; -require_once 'PHPUnit.php'; - -function _Auth_OpenID_mkdtemp() -{ - if (strpos(PHP_OS, 'WIN') === 0) { - $dir = $_ENV['TMP']; - if (!isset($dir)) { - $dir = 'C:\Windows\Temp'; - } - } else { - $dir = @$_ENV['TMPDIR']; - if (!isset($dir)) { - $dir = '/tmp'; - } - } - - return Auth_OpenID_FileStore::_mkdtemp($dir); -} - - -/** - * This is the host where the SQL stores' databases should be created - * and destroyed. - */ -$_Auth_OpenID_db_test_host = 'dbtest'; - -/** - * Generate a sufficently unique database name so many hosts can run - * SQL store tests on the server at the same time and not step on each - * other. - */ -function _Auth_OpenID_getTmpDbName() -{ - $hostname = php_uname('n'); - $hostname = strtolower(str_replace('.', '_', $hostname)); - - return sprintf("%s_%d_%s_openid_test", - $hostname, - getmypid(), - strval(rand(1, time()))); -} - -/** - * Tests the OpenID stores. - * - * @package OpenID - */ -class Tests_Auth_OpenID_StoreTest extends PHPUnit_TestCase { - - /** - * Prepares for the SQL store tests. - */ - function setUp() - { - $this->letters = Auth_OpenID_letters; - $this->digits = Auth_OpenID_digits; - $this->punct = Auth_OpenID_punct; - $this->allowed_nonce = $this->letters . $this->digits; - $this->allowed_handle = $this->letters . $this->digits . $this->punct; - } - - /** - * Generates a nonce value. - */ - function generateNonce() - { - return Auth_OpenID_CryptUtil::randomString(8, $this->allowed_nonce); - } - - /** - * Generates an association with the specified parameters. - */ - function genAssoc($now, $issued = 0, $lifetime = 600) - { - $sec = Auth_OpenID_CryptUtil::randomString(20); - $hdl = Auth_OpenID_CryptUtil::randomString(128, $this->allowed_handle); - return new Auth_OpenID_Association($hdl, $sec, $now + $issued, - $lifetime, 'HMAC-SHA1'); - } - - /** - * @access private - */ - function _checkRetrieve(&$store, $url, $handle, $expected, $name = null) - { - $retrieved_assoc = $store->getAssociation($url, $handle); - if (($expected === null) || ($store->isDumb())) { - $this->assertNull($retrieved_assoc, "Retrieved association " . - "was non-null"); - } else { - if ($retrieved_assoc === null) { - $this->fail("$name: Got null when expecting " . - $expected->serialize()); - } else { - $this->assertEquals($expected->serialize(), - $retrieved_assoc->serialize(), $name); - } - } - } - - function _checkRemove(&$store, $url, $handle, $expected, $name = null) - { - $present = $store->removeAssociation($url, $handle); - $expectedPresent = (!$store->isDumb() && $expected); - $this->assertTrue((!$expectedPresent && !$present) || - ($expectedPresent && $present), - $name); - } - - /** - * Make sure a given store has a minimum of API compliance. Call - * this function with an empty store. - * - * Raises AssertionError if the store does not work as expected. - * - * OpenIDStore -> NoneType - */ - function _testStore($store) - { - - // Association functions - $now = time(); - - $server_url = 'http://www.myopenid.com/openid'; - - $assoc = $this->genAssoc($now); - - $this->_checkRetrieve($store, $server_url, null, null, - 'Make sure that a missing association returns no result'); - - $store->storeAssociation($server_url, $assoc); - $this->_checkRetrieve($store, $server_url, null, $assoc, - 'Check that after storage, getting returns the same result'); - - $this->_checkRetrieve($store, $server_url, null, $assoc, - 'more than once'); - - $store->storeAssociation($server_url, $assoc); - $this->_checkRetrieve($store, $server_url, null, $assoc, - 'Storing more than once has no ill effect'); - - // Removing an association that does not exist returns not present - $this->_checkRemove($store, $server_url, $assoc->handle . 'x', false, - "Remove nonexistent association (1)"); - - // Removing an association that does not exist returns not present - $this->_checkRemove($store, $server_url . 'x', $assoc->handle, false, - "Remove nonexistent association (2)"); - - // Removing an association that is present returns present - $this->_checkRemove($store, $server_url, $assoc->handle, true, - "Remove existent association"); - - // but not present on subsequent calls - $this->_checkRemove($store, $server_url, $assoc->handle, false, - "Remove nonexistent association after removal"); - - // Put assoc back in the store - $store->storeAssociation($server_url, $assoc); - - // More recent and expires after assoc - $assoc2 = $this->genAssoc($now, $issued = 1); - $store->storeAssociation($server_url, $assoc2); - - $this->_checkRetrieve($store, $server_url, null, $assoc2, - 'After storing an association with a different handle, but the -same $server_url, the handle with the later expiration is -returned.'); - - $this->_checkRetrieve($store, $server_url, $assoc->handle, $assoc, - 'We can still retrieve the older association'); - - $this->_checkRetrieve($store, $server_url, $assoc2->handle, $assoc2, - 'Plus we can retrieve the association with the later expiration -explicitly'); - - $assoc3 = $this->genAssoc($now, $issued = 2, $lifetime = 100); - $store->storeAssociation($server_url, $assoc3); - - // More recent issued time, so assoc3 is expected. - $this->_checkRetrieve($store, $server_url, null, $assoc3, "(1)"); - - $this->_checkRetrieve($store, $server_url, $assoc->handle, - $assoc, "(2)"); - - $this->_checkRetrieve($store, $server_url, $assoc2->handle, - $assoc2, "(3)"); - - $this->_checkRetrieve($store, $server_url, $assoc3->handle, - $assoc3, "(4)"); - - $this->_checkRemove($store, $server_url, $assoc2->handle, true, "(5)"); - - $this->_checkRetrieve($store, $server_url, null, $assoc3, "(6)"); - - $this->_checkRetrieve($store, $server_url, $assoc->handle, - $assoc, "(7)"); - - $this->_checkRetrieve($store, $server_url, $assoc2->handle, - null, "(8)"); - - $this->_checkRetrieve($store, $server_url, $assoc3->handle, - $assoc3, "(9)"); - - $this->_checkRemove($store, $server_url, $assoc2->handle, - false, "(10)"); - - $this->_checkRemove($store, $server_url, $assoc3->handle, - true, "(11)"); - - $this->_checkRetrieve($store, $server_url, null, $assoc, "(12)"); - - $this->_checkRetrieve($store, $server_url, $assoc->handle, - $assoc, "(13)"); - - $this->_checkRetrieve($store, $server_url, $assoc2->handle, - null, "(14)"); - - $this->_checkRetrieve($store, $server_url, $assoc3->handle, - null, "(15)"); - - $this->_checkRemove($store, $server_url, $assoc2->handle, - false, "(16)"); - - $this->_checkRemove($store, $server_url, $assoc->handle, - true, "(17)"); - - $this->_checkRemove($store, $server_url, $assoc3->handle, - false, "(18)"); - - $this->_checkRetrieve($store, $server_url, null, null, "(19)"); - - $this->_checkRetrieve($store, $server_url, $assoc->handle, - null, "(20)"); - - $this->_checkRetrieve($store, $server_url, $assoc2->handle, - null, "(21)"); - - $this->_checkRetrieve($store, $server_url,$assoc3->handle, - null, "(22)"); - - $this->_checkRemove($store, $server_url, $assoc2->handle, - false, "(23)"); - - $this->_checkRemove($store, $server_url, $assoc->handle, - false, "(24)"); - - $this->_checkRemove($store, $server_url, $assoc3->handle, - false, "(25)"); - - // Put associations into store, for two different server URLs - $assoc1 = $this->genAssoc($now); - $assoc2 = $this->genAssoc($now + 2); - $server_url1 = "http://one.example.com/one"; - $server_url2 = "http://two.localhost.localdomain/two"; - - $store->storeAssociation($server_url1, $assoc1); - $store->storeAssociation($server_url2, $assoc2); - - // Ask for each one, make sure we get it - $this->_checkRetrieve($store, $server_url1, $assoc1->handle, - $assoc1, "(26)"); - - $this->_checkRetrieve($store, $server_url2, $assoc2->handle, - $assoc2, "(27)"); - - $store->storeAssociation($server_url1, $assoc1); - $store->storeAssociation($server_url2, $assoc2); - - // Ask for each one, make sure we get it - $this->_checkRetrieve($store, $server_url1, null, - $assoc1, "(28)"); - - $this->_checkRetrieve($store, $server_url2, null, - $assoc2, "(29)"); - } - - function _checkUseNonce(&$store, $nonce, $expected, $msg=null) - { - $actual = $store->useNonce($nonce); - $expected = $store->isDumb() || $expected; - $val = ($actual && $expected) || (!$actual && !$expected); - $this->assertTrue($val, "_checkUseNonce failed: $msg"); - } - - function _testNonce(&$store) - { - // Nonce functions - - // Random nonce (not in store) - $nonce1 = $this->generateNonce(); - - // A nonce is not present by default - $this->_checkUseNonce($store, $nonce1, false, 1); - - // Storing once causes useNonce to return true the first, and - // only the first, time it is called after the $store-> - $store->storeNonce($nonce1); - $this->_checkUseNonce($store, $nonce1, true, 2); - $this->_checkUseNonce($store, $nonce1, false, 3); - $this->_checkUseNonce($store, $nonce1, false, 4); - - // Storing twice has the same effect as storing once. - $store->storeNonce($nonce1); - $store->storeNonce($nonce1); - $this->_checkUseNonce($store, $nonce1, true, 5); - $this->_checkUseNonce($store, $nonce1, false, 6); - $this->_checkUseNonce($store, $nonce1, false, 7); - - // Auth key functions - - // There is no key to start with, so generate a new key and - // return it. - $key = $store->getAuthKey(); - - // The second time around should return the same as last time. - $key2 = $store->getAuthKey(); - $this->assertEquals($key, $key2, "Auth keys differ"); - $this->assertEquals(strlen($key), $store->AUTH_KEY_LEN, - "Key length not equals AUTH_KEY_LEN"); - } - - function test_memstore() - { - require_once 'Tests/Auth/OpenID/MemStore.php'; - $store = new Tests_Auth_OpenID_MemStore('Bogus auth key '); - $this->_testStore(&$store); - $this->_testNonce(&$store); - } - - function test_filestore() - { - require_once 'Auth/OpenID/FileStore.php'; - - $temp_dir = _Auth_OpenID_mkdtemp(); - - if (!$temp_dir) { - trigger_error('Could not create temporary directory ' . - 'with Auth_OpenID_FileStore::_mkdtemp', - E_USER_WARNING); - return null; - } - - $store = new Auth_OpenID_FileStore($temp_dir); - $this->_testStore($store); - $this->_testNonce($store); - $store->destroy(); - } - - function test_postgresqlstore() - { - // If the postgres extension isn't loaded or loadable, succeed - // because we can't run the test. - if (!(extension_loaded('pgsql') || - @dl('pgsql.' . PHP_SHLIB_SUFFIX))) { - $this->pass(); - return; - } - - require_once 'Auth/OpenID/PostgreSQLStore.php'; - require_once 'DB.php'; - - global $_Auth_OpenID_db_test_host; - - $temp_db_name = _Auth_OpenID_getTmpDbName(); - - $connect_db_name = 'test_master'; - - $dsn = array( - 'phptype' => 'pgsql', - 'username' => 'openid_test', - 'password' => '', - 'hostspec' => $_Auth_OpenID_db_test_host, - 'database' => $connect_db_name - ); - - $allowed_failures = 5; - $result = null; - $sleep_time = 1.0; - $sql = sprintf("CREATE DATABASE %s", $temp_db_name); - - for ($failures = 0; $failures < $allowed_failures; $failures++) { - $template_db =& DB::connect($dsn); - - if (PEAR::isError($template_db)) { - $result &= $template_db; - } else { - // Try to create the test database. - $result = $template_db->query($sql); - - $template_db->disconnect(); - unset($template_db); - - if (!PEAR::isError($result)) { - break; - } - } - - $sleep_time *= ((mt_rand(1, 100) / 100.0) + 1.5); - print "Failed to create database $temp_db_name.\n". - "Waiting $sleep_time before trying again\n"; - - $int_sleep = floor($sleep_time); - $frac_sleep = $sleep_time - $int_sleep; - sleep($int_sleep); - usleep($frac_sleep * 1000000.0); - } - - if ($failures == $allowed_failures) { - $this->fail("Temporary database creation failed after $failures ". - " tries ('$temp_db_name'): " . $result->getMessage()); - return; - } - - // Disconnect from template1 and reconnect to the temporary - // testing database. - $dsn['database'] = $temp_db_name; - $db =& DB::connect($dsn); - - if (PEAR::isError($db)) { - $this->fail("Temporary database connection failed " . - " ('$temp_db_name'): " . $db->getMessage()); - return; - } - - $store =& new Auth_OpenID_PostgreSQLStore($db); - $store->createTables(); - $this->_testStore($store); - $this->_testNonce($store); - - $db->disconnect(); - unset($db); - - // Connect to template1 again so we can drop the temporary - // database. - $dsn['database'] = $connect_db_name; - $template_db =& DB::connect($dsn); - - if (PEAR::isError($template_db)) { - $this->fail("Template database connection (to drop " . - "temporary database) failed: " . - $template_db->getMessage()); - return; - } - - $result = $template_db->query(sprintf("DROP DATABASE %s", - $temp_db_name)); - - if (PEAR::isError($result)) { - $this->fail("Dropping temporary database failed: " . - $result->getMessage()); - return; - } - - $template_db->disconnect(); - unset($template_db); - } - - function test_sqlitestore() - { - // If the postgres extension isn't loaded or loadable, succeed - // because we can't run the test. - if (!(extension_loaded('sqlite') || - @dl('sqlite.' . PHP_SHLIB_SUFFIX))) { - $this->pass(); - return; - } - - require_once 'Auth/OpenID/SQLiteStore.php'; - require_once 'DB.php'; - - $temp_dir = _Auth_OpenID_mkdtemp(); - - if (!$temp_dir) { - trigger_error('Could not create temporary directory ' . - 'with Auth_OpenID_FileStore::_mkdtemp', - E_USER_WARNING); - return null; - } - - $dsn = sprintf("sqlite:///%s/file.db", $temp_dir); - $db =& DB::connect($dsn); - - if (PEAR::isError($db)) { - $this->fail("SQLite database connection failed: " . - $db->getMessage()); - } else { - $store =& new Auth_OpenID_SQLiteStore($db); - $this->assertTrue($store->createTables(), "Table creation failed"); - $this->_testStore($store); - $this->_testNonce($store); - } - - $db->disconnect(); - unset($db); - unset($store); - unlink($temp_dir . '/file.db'); - rmdir($temp_dir); - } - - function test_mysqlstore() - { - // If the mysql extension isn't loaded or loadable, succeed - // because we can't run the test. - if (!(extension_loaded('mysql') || - @dl('mysql.' . PHP_SHLIB_SUFFIX))) { - $this->pass(); - return; - } - - require_once 'Auth/OpenID/MySQLStore.php'; - require_once 'DB.php'; - - global $_Auth_OpenID_db_test_host; - - $dsn = array( - 'phptype' => 'mysql', - 'username' => 'openid_test', - 'password' => '', - 'hostspec' => $_Auth_OpenID_db_test_host - ); - - $db =& DB::connect($dsn); - - if (PEAR::isError($db)) { - print "MySQL database connection failed: " . - $db->getMessage(); - $this->pass(); - return; - } - - $temp_db_name = _Auth_OpenID_getTmpDbName(); - - $result = $db->query("CREATE DATABASE $temp_db_name"); - - if (PEAR::isError($result)) { - $this->fail("Error creating MySQL temporary database: " . - $result->getMessage()); - return; - } - - $db->query("USE $temp_db_name"); - - $store =& new Auth_OpenID_MySQLStore($db); - $store->createTables(); - $this->_testStore($store); - $this->_testNonce($store); - - $db->query("DROP DATABASE $temp_db_name"); - } -} - -?> diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/TestUtil.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/TestUtil.php deleted file mode 100644 index 83581600d..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/TestUtil.php +++ /dev/null @@ -1,28 +0,0 @@ -setName($desc); - $this->case = $case; - $this->expected = $expected; - } - - function runTest() - { - $is_sane = Auth_OpenID_TrustRoot::isSane($this->case); - $parsed = (bool)Auth_OpenID_TrustRoot::_parse($this->case); - switch ($this->expected) { - case 'sane': - $this->assertTrue($is_sane); - $this->assertTrue($parsed); - break; - case 'insane': - $this->assertTrue($parsed); - $this->assertFalse($is_sane); - break; - default: - $this->assertFalse($parsed); - $this->assertFalse($is_sane); - } - } -} - -class Tests_Auth_OpenID_TRMatchCase extends PHPUnit_TestCase { - function Tests_Auth_OpenID_TRMatchCase($desc, $tr, $rt, $matches) - { - $this->setName($desc); - $this->tr = $tr; - $this->rt = $rt; - $this->matches = $matches; - } - - function runTest() - { - $matches = Auth_OpenID_TrustRoot::match($this->tr, $this->rt); - $this->assertEquals((bool)$this->matches, (bool)$matches); - } -} - -function Tests_Auth_OpenID_parseHeadings($data, $c) -{ - $heading_pat = '/(^|\n)' . $c . '{40}\n([^\n]+)\n' . $c . '{40}\n()/'; - $offset = 0; - $headings = array(); - while (true) { - preg_match($heading_pat, substr($data, $offset), $matches, - PREG_OFFSET_CAPTURE); - if (!$matches) { - break; - } - $start = $matches[0][1]; - $heading = $matches[2][0]; - $end = $matches[3][1]; - $headings[] = array('heading' => $heading, - 'start' => $offset + $start, - 'end' => $offset + $end, - ); - $offset += $end; - } - return $headings; -} - -function Tests_Auth_OpenID_getSections($data) -{ - $headings = Tests_Auth_OpenID_parseHeadings($data, '-'); - $sections = array(); - $n = count($headings); - for ($i = 0; $i < $n; ) { - $secdata = $headings[$i]; - list($numtests, $desc) = explode(': ', $secdata['heading']); - $start = $secdata['end']; - $i += 1; - if ($i < $n) { - $blob = substr($data, $start, $headings[$i]['start'] - $start); - } else { - $blob = substr($data, $start); - } - $lines = explode("\n", trim($blob)); - if (count($lines) != $numtests) { - trigger_error('Parse failure: ' . var_export($secdata, true), - E_USER_ERROR); - } - $sections[] = array('desc' => $desc, 'lines' => $lines,); - } - return $sections; -} - -function Tests_Auth_OpenID_trParseTests($head, $tests) -{ - $tests = array('fail' => $tests[0], - 'insane' => $tests[1], - 'sane' => $tests[2]); - $testobjs = array(); - foreach ($tests as $expected => $testdata) { - $lines = $testdata['lines']; - foreach ($lines as $line) { - $desc = sprintf("%s - %s: %s", $head, - $testdata['desc'], var_export($line, true)); - $testobjs[] = new Tests_Auth_OpenID_TRParseCase( - $desc, $line, $expected); - } - } - return $testobjs; -} - -function Tests_Auth_OpenID_trMatchTests($head, $tests) -{ - $tests = array(true => $tests[0], false => $tests[1]); - $testobjs = array(); - foreach ($tests as $expected => $testdata) { - $lines = $testdata['lines']; - foreach ($lines as $line) { - $pat = '/^([^ ]+) +([^ ]+)$/'; - preg_match($pat, $line, $matches); - list($_, $tr, $rt) = $matches; - $desc = sprintf("%s - %s: %s %s", $head, $testdata['desc'], - var_export($tr, true), var_export($rt, true)); - $testobjs[] = new Tests_Auth_OpenID_TRMatchCase( - $desc, $tr, $rt, $expected); - } - } - return $testobjs; -} - -function Tests_Auth_OpenID_trustRootTests() -{ - $data = Tests_Auth_OpenID_readdata('trustroot.txt'); - list($parsehead, $matchhead) = Tests_Auth_OpenID_parseHeadings($data, '='); - $pe = $parsehead['end']; - $parsedata = substr($data, $pe, $matchhead['start'] - $pe); - $parsetests = Tests_Auth_OpenID_getSections($parsedata); - $parsecases = Tests_Auth_OpenID_trParseTests($parsehead['heading'], - $parsetests); - - $matchdata = substr($data, $matchhead['end']); - $matchtests = Tests_Auth_OpenID_getSections($matchdata); - $matchcases = Tests_Auth_OpenID_trMatchTests($matchhead['heading'], - $matchtests); - - return array_merge($parsecases, $matchcases); -} - -class Tests_Auth_OpenID_TrustRoot extends PHPUnit_TestSuite { - function Tests_Auth_OpenID_TrustRoot($name) - { - $this->setName($name); - - foreach (Tests_Auth_OpenID_trustRootTests() as $test) { - $this->addTest($test); - } - } -} \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/URINorm.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/URINorm.php deleted file mode 100644 index 02263af33..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/URINorm.php +++ /dev/null @@ -1,68 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'Auth/OpenID/URINorm.php'; -require_once 'Tests/Auth/OpenID/TestUtil.php'; - -class Tests_Auth_OpenID_URINorm_TestCase extends PHPUnit_TestCase { - function Tests_Auth_OpenID_URINorm_TestCase( - $name, $uri, $expected) - { - - $this->setName($name); - $this->uri = $uri; - $this->expected = $expected; - } - - function runTest() - { - $actual = Auth_OpenID_urinorm($this->uri); - $this->assertEquals($this->expected, $actual); - } -} - -class Tests_Auth_OpenID_URINorm extends PHPUnit_TestSuite { - function _readTestCases() - { - $lines = Tests_Auth_OpenID_readlines('urinorm.txt'); - $cases = array(); - $case = array(); - for ($i = 0; $i < count($lines) && ($i + 3 <= count($lines)); $i += 4) { - $name = trim($lines[$i]); - $uri = trim($lines[$i + 1]); - $expected = trim($lines[$i + 2]); - if ($expected == 'fail') { - $expected = null; - } - $cases[] = array($name, $uri, $expected); - } - - return $cases; - } - - function Tests_Auth_OpenID_URINorm($name) - { - $this->setName($name); - $cases = $this->_readTestCases(); - foreach ($cases as $case) { - list($name, $uri, $expected) = $case; - $this->addTest(new Tests_Auth_OpenID_URINorm_TestCase($name, $uri, $expected)); - } - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Util.php b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Util.php deleted file mode 100644 index 838a5a6eb..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/Util.php +++ /dev/null @@ -1,260 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'Auth/OpenID.php'; - -class Tests_Auth_OpenID_Util extends PHPUnit_TestCase { - function test_base64() - { - // This is not good for international use, but PHP doesn't - // appear to provide access to the local alphabet. - $letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; - $digits = "0123456789"; - $extra = "+/="; - $allowed_s = $letters . $digits . $extra; - $allowed_d = array(); - - for ($i = 0; $i < strlen($allowed_s); $i++) { - $c = $allowed_s[$i]; - $allowed_d[$c] = null; - } - - function checkEncoded($obj, $str, $allowed_array) - { - for ($i = 0; $i < strlen($str); $i++) { - $obj->assertTrue(array_key_exists($str[$i], - $allowed_array)); - } - } - - $cases = array( - "", - "x", - "\x00", - "\x01", - str_repeat("\x00", 100), - implode("", array_map('chr', range(0, 255))) - ); - - foreach ($cases as $s) { - $b64 = base64_encode($s); - checkEncoded($this, $b64, $allowed_d); - $s_prime = base64_decode($b64); - $this->assertEquals($s_prime, $s); - } - - function random_ordinal($unused) - { - return rand(0, 255); - } - - // Randomized test - foreach (range(0, 49) as $i) { - $n = rand(0, 2048); - $s = implode("", array_map('chr', - array_map('random_ordinal', - range(0, $n)))); - $b64 = base64_encode($s); - checkEncoded($this, $b64, $allowed_d); - $s_prime = base64_decode($b64); - $this->assertEquals($s_prime, $s); - } - } - - function test_normalizeUrl() - { - $this->assertEquals("http://foo.com/", - Auth_OpenID::normalizeUrl("foo.com")); - - $this->assertEquals("http://foo.com/", - Auth_OpenID::normalizeUrl("http://foo.com")); - - $this->assertEquals("https://foo.com/", - Auth_OpenID::normalizeUrl("https://foo.com")); - - $this->assertEquals("http://foo.com/bar", - Auth_OpenID::normalizeUrl("foo.com/bar")); - - $this->assertEquals("http://foo.com/bar", - Auth_OpenID::normalizeUrl("http://foo.com/bar")); - - $this->assertEquals("http://foo.com/", - Auth_OpenID::normalizeUrl("http://foo.com/")); - - $this->assertEquals("https://foo.com/", - Auth_OpenID::normalizeUrl("https://foo.com/")); - - $this->assertEquals("https://foo.com/bar" , - Auth_OpenID::normalizeUrl("https://foo.com/bar")); - - if (0) { - $this->assertEquals("http://foo.com/%E8%8D%89", - Auth_OpenID::normalizeUrl("foo.com/\u8349")); - - $this->assertEquals("http://foo.com/%E8%8D%89", - Auth_OpenID::normalizeUrl("http://foo.com/\u8349")); - } - - $non_ascii_domain_cases = array( - array("http://xn--vl1a.com/", - "\u8349.com"), - - array("http://xn--vl1a.com/", - "http://\u8349.com"), - - array("http://xn--vl1a.com/", - "\u8349.com/"), - - array("http://xn--vl1a.com/", - "http://\u8349.com/"), - - array("http://xn--vl1a.com/%E8%8D%89", - "\u8349.com/\u8349"), - - array("http://xn--vl1a.com/%E8%8D%89", - "http://\u8349.com/\u8349"), - ); - - // XXX - /* - codecs.getencoder('idna') - except LookupError: - # If there is no idna codec, these cases with - # non-ascii-representable domain names should fail. - should_raise = True - else: - should_raise = False - - for expected, case in non_ascii_domain_cases: -try: -actual = Auth_OpenID::normalizeUrl(case) - except UnicodeError: - assert should_raise - else: -assert not should_raise and actual == expected, case - */ - - $this->assertNull(Auth_OpenID::normalizeUrl(null)); - $this->assertNull(Auth_OpenID::normalizeUrl('')); - $this->assertNull(Auth_OpenID::normalizeUrl('http://')); - } - - function test_appendArgs() - { - - $simple = 'http://www.example.com/'; - - $cases = array( - array('empty list', - array($simple, array()), - $simple), - - array('empty dict', - array($simple, array()), - $simple), - - array('one list', - array($simple, array(array('a', 'b'))), - $simple . '?a=b'), - - array('one dict', - array($simple, array('a' => 'b')), - $simple . '?a=b'), - - array('two list (same)', - array($simple, array(array('a', 'b'), - array('a', 'c'))), - $simple . '?a=b&a=c'), - - array('two list', - array($simple, array(array('a', 'b'), - array('b', 'c'))), - $simple . '?a=b&b=c'), - - array('two list (order)', - array($simple, array(array('b', 'c'), - array('a', 'b'))), - $simple . '?b=c&a=b'), - - array('two dict (order)', - array($simple, array('b' => 'c', - 'a' => 'b')), - $simple . '?a=b&b=c'), - - array('escape', - array($simple, array(array('=', '='))), - $simple . '?%3D=%3D'), - - array('escape (URL)', - array($simple, array(array('this_url', - $simple))), - $simple . - '?this_url=http%3A%2F%2Fwww.example.com%2F'), - - array('use dots', - array($simple, array(array('openid.stuff', - 'bother'))), - $simple . '?openid.stuff=bother'), - - array('args exist (empty)', - array($simple . '?stuff=bother', array()), - $simple . '?stuff=bother'), - - array('args exist', - array($simple . '?stuff=bother', - array(array('ack', 'ack'))), - $simple . '?stuff=bother&ack=ack'), - - array('args exist', - array($simple . '?stuff=bother', - array(array('ack', 'ack'))), - $simple . '?stuff=bother&ack=ack'), - - array('args exist (dict)', - array($simple . '?stuff=bother', - array('ack' => 'ack')), - $simple . '?stuff=bother&ack=ack'), - - array('args exist (dict 2)', - array($simple . '?stuff=bother', - array('ack' => 'ack', 'zebra' => 'lion')), - $simple . '?stuff=bother&ack=ack&zebra=lion'), - - array('three args (dict)', - array($simple, array('stuff' => 'bother', - 'ack' => 'ack', - 'zebra' => 'lion')), - $simple . '?ack=ack&stuff=bother&zebra=lion'), - - array('three args (list)', - array($simple, array( - array('stuff', 'bother'), - array('ack', 'ack'), - array('zebra', 'lion'))), - $simple . '?stuff=bother&ack=ack&zebra=lion'), - ); - - // Tests. - foreach ($cases as $case) { - list($desc, $data, $expected) = $case; - list($url, $query) = $data; - $this->assertEquals($expected, - Auth_OpenID::appendArgs($url, $query)); - } - } -} - -?> diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/dhexch b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/dhexch deleted file mode 100644 index 7a8be0737..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/dhexch +++ /dev/null @@ -1,25 +0,0 @@ -2126517416 1503105722 107994742031567165457540274858809652167995244913839787589743578103625285208352685332617657612917013907706708046204110421143061814711041523408378123857885283119340960531860106377561159933747570456852792031929014142490977574671361334052940195520731561436107832724927338342871107723160776334443535305873323500256 -1726325708 97982531 120276049194830643562108817809662062106546923236483207874835831104433621725428405166395533625121884325430201809382464614237831903082554679507511419420917850293136497504021313018779166242697363853538302653639224106865664333535348491338293646599577557630201300627170167862878616413985927131488374258664616392092 -7191572 1822336109 122056637146069839485450157659463602136773435897258591538866604089577736061707581662949502933519623787237101424065925246227311788026398025228549571401681364284397681558495127293422405005519207011429758784679359026564663723906503072635741603815702201571462971153413211041068663899032199555395016545688330586044 -228786056 1675584603 117701151389970889003978379762267752133865163176557074701079147801046451813688145274964215828365957142552336288689654120601548113748929766366564174096775189852190965077394508456052823068488823291767811224538103381867631753777200820579564678159674117155563703553000884461777658090456283332220216734612556688513 -804908984 2135801843 64993745755656098807721600357147815184322152457013249228399624894951891365784451431980303960531348451816046446458097670030866575746640795583720668211568084611960590087205609635406810868042628237527172170079769791670793545166757565720288711565725471066283638538704293790079806106677373567711048953361333211210 -1122280790 1614259350 3970244390792364343312138669070883638127263175075582263096706481850448381703964455173288740017450440943500797144425033043394229962284552755667989452357422108026327690718801740503572676309934059296211509079412739861064178751353597300902277808636740745335474263237517162977595705012834985895341553367459792583 -554314515 998420920 123643361743671701825618173162391028658772950477687990712748798605914570427945055208640384218469111438408345424338893652923941552893606133066783001743721804859308011765507616515353882559991735865794891472781955621601467016660304188272123202130977476560852093272543539966026915472638392018462692756028817601255 -719945347 612820861 103551249110130410018728043034553056272870332237608830696804104933749752848182147616875273399120950956495972830177071656956289995248469136767050516935071277259217339496102844766065836859503647533631994664364053659677674596380230790347281302210808329346735637394258018381272973124437749621859047096780954428763 -1030625109 1519412381 15696617275088442746387785148060623054817901281945029743077460769180096631404983383910114661025034557230747207080210469011273591184527303007260363112037932265980126744700626024259985586947347501172863220738584453809309462129610346067407238209251289710742647393829531889303218223237301268534338307710560528439 -1711254768 1710707291 57671766580359527580383190392835992822988951359063099518333951473557157636791373831886967456320589708220219137556141104065094734173377513568373511612097050435132426608350879787688784646390242899955969071718348216328885834450215105058725433533776719158074043390881257587614495125963197168525883771897032429145 -350065369 319208735 44521456496863698728911963510653524876630475042295240074435222668882607096381437705850621136342821688618111659046306438623837465097724847737566157513351593063095577843263064035230462006868686576892037899378382406468120801597507834123281075093108794208153836881908434178839513489161646768450411118658866064760 -2060218994 1946043223 56312469398022909670236635086334904553302665496424591277087996113064393075310693844995965663947160222486178761741935506327835516277624460430181450292802834360724976701838361338230904004764511115279873515265325364671729600765057941485718305803874368460265173324375012707038078949514720443784809672434739391394 -348859478 486047271 63578529904279717544096579659734885121575283886072626718230632949600891106018451131129915865157675764791879663149288069798959505461654979937263948081560345222746334083402817181164255208790802816536212306902000509334761465449621953806270899950736579351124776383450108496252367170418747525612150563944975123906 -1012847796 1311216437 107243486601777772242638374457577339776317528440551074937135087437181884726459082109032187432358497015564158022857522392034581988349463322793155498885898276448910563934149930379053835676169014345745737841013305105289515557002942278171260275549569040668192618881235525671100756834785472005323827534045854021808 -1108188659 73002956 151810407586486667408500610375120927048683500513617431444670840241105574837701928593342245869128797827409414723271900961746330458448581633550115101600384307415146567797051023727766743006773542272526168313129133103058023736384944187039543948615045687254043611794926502253898300807539332514119558228945387167129 -1367891527 957164137 106888874248390844568539366153235739322099571679913873665077300044384432133087328354115380340807163549209282323027334598550750155549975114208460003069900549945106924101337174939911191001778776920788324219234143471273850920009578258747072782983631129326451246547584416492036977756842649955247390532642313031673 -1109319782 312705549 68015190517529836158634537187194145539209089151286211608940739126031607591236786876471227901028349157506546942329120582174574792522929377067808957872180985535362179866434055727341930725758279092655515659945664689974113139170079360543337269872976473433045950679959300152245802435127006127508284128226462808242 -77629902 1442208847 80002290434058357698705037287975366182731667140415670086832039653095542318592553515737200055739316505804591069679885064388918352070456242079053263046801427045473800954002156858264359891351667747947419377687560365442620710551484084591458509139700723197713694698034159851521977928611736821392017020477832037627 -1876665427 42392232 94638321177007894302596716790742601595610267055803051893624262442254201910985079684859058170169970420428917385076321338591735591117741499259022286688741758915429225227910702796255294628145448897362890044237980198958757175908654342104958253051607028469935368687936664986431151922321609065078691893879183189566 -559635525 1782490275 71365295096950865667427967092027725943054589808884646377867956234326896501650860934260905567087143525158504721587985301638221372965891635800328428504369765880956526297788284176796001565732103141822914955442743632126166019769189834699258461912602048002960149362882398622111007162709444738907309082349930416022 -743575094 32085276 110453584602878746921666429659148701413696049424461554973529870857842263810553552249241246313332783204009612578170167391820378603413812193480492843470042238103670641705732755583940134259794253885826115668806244330875357074130716388274584300227667628005544555311079499447940768673150499033922449576383527638186 -129818206 137481306 140835473021876998102027624369898079740454145360699735493249477450544517213808389172240396819192163023303266715591396745357472463341356969319556862236385556442904650009255138279232984377682804793224148996875324569988553808409865099882747099149617352970774643108291836908871124753511856578160489828404865664010 -570689556 1980693879 108353275894436996626884805554770441694866167783124178905252902978286824751598925059178987939656961896173921225105217325495780672752694383439806863122466053616930970271706866769895033633709670957150865005763659847698663978549871624628298476651867451354816053985969930735100533712902146229305011837945607699037 -2103057616 691067770 27024056452709622585420653808400360576905666723601175215091499609471301967744143329187436673102391151329548614036436716051750524604202541651425479133617399916946398092715923340837394931898418514658066714568415577105694330058750941172815095999450748361179045856199026312487393802486505084466623313733605784416 -481705774 1641440342 117722260864906582664053412535574009960206959347375143271559843536103545468155917636456429488071536410856812908716077868452921005581676036410474437330482920141777150620686622782118823530416466223519936589968714322291361670902315520017103387742935706013660879451297004924070011539277017717095949755265539759012 diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/dhpriv b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/dhpriv deleted file mode 100644 index 0fa523146..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/dhpriv +++ /dev/null @@ -1,29 +0,0 @@ -130706940119084053627151828062879423433929180135817317038378606310097533503449582079984816816837125851552273641820339909167103200910805078308128174143174269944095368580519322913514764528012639683546377014716235962867583443566164615728897857285824741767070432119909660645255499710701356135207437699643611094585 139808169914464096465921128085565621767096724855516655439365028496569658038844954238931647642811548254956660405394116677296461848124300258439895306367561416289126854788101396379292925819850897858045772500578222021901631436550118958972312221974009238050517034542286574826081826542722270952769078386418682059418 -91966407878983240112417790733941098492087186469785726449910011271065622315680646030230288265496017310433513856308693810812043160919214636748486185212617634222158204354206411031403206076739932806412551605172319515223573351072757800448643935018534945933808900467686115619932664888581913179496050117713298715475 88086484332488517006277516020842172054013692832175783214603951240851750819999098631851571207693874357651112736088114133607400684776234181681933311972926752846692615822043533641407510569745606256772455614745111122033229877596984718963046218854103292937700694160593653595134512369959987897086639788909618660591 -94633950701209990078055218830969910271587805983595045023718108184189787131629772007048606080263109446462048743696369276578815611098215686598630889831104860221067872883514840819381234786050098278403321905311637820524177879167250981289318356078312300538871435101338967079907049912435983871847334104247675360099 136836393035803488129856151345450008294260680733328546556640578838845312279198933806383329293483852515700876505956362639881210101974254765087350842271260064592406308509078284840473735904755203614987286456952991025347168970462354352741159076541157478949094536405618626397435745496863324654768971213730622037771 -24685127248019769965088146297942173464487677364928435784091685260262292485380918213538979925891771204729738138857126454465630594391449913947358655368215901119137728648638547728497517587701248406019427282237279437409508871300675355166059811431191200555457304463617727969228965042729205402243355816702436970430 103488011917988946858248200111251786178288940265978921633592888293430082248387786443813155999158786903216094876295371112716734481877806417714913656921169196196571699893360825510307056269738593971532017994987406325068886420548597161498019372380511676314312298122272401348856314619382867707981701472607230523868 -116791045850880292989786005885944774698035781824784400772676299590038746153860847252706167458966356897309533614849402276819438194497464696186624618374179812548893947178936305721131565012344462048549467883494038577857638815386798694225798517783768606048713198211730870155881426709644960689953998714045816205549 25767875422998856261320430397505398614439586659207416236135894343577952114994718158163212134503751463610021489053571733974769536157057815413209619147486931502025658987681202196476489081257777148377685478756033509708349637895740799542063593586769082830323796978935454479273531157121440998804334199442003857410 -75582226959658406842894734694860761896800153014775231713388264961517169436476322183886891849966756849783437334069692683523296295601533803799559985845105706728538458624387103621364117548643541824878550074680443708148686601108223917493525070861593238005735446708555769966855130921562955491250908613793521520082 51100990616369611694975829054222013346248289055987940844427061856603230021472379888102172458517294080775792439385531234808129302064303666640376750139242970123503857186428797403843206765926798353022284672682073397573130625177187185114726049347844460311761033584101482859992951420083621362870301150543916815123 -22852401165908224137274273646590366934616265607879280260563022941455466297431255072303172649495519837876946233272420969249841381161312477263365567831938496555136366981954001163034914812189448922853839616662859772087929140818377228980710884492996109434435597500854043325062122184466315338260530734979159890875 35017410720028595029711778101507729481023945551700945988329114663345341120595162378885287946069695772429641825579528116641336456773227542256911497084242947904528367986325800537695079726856460817606404224094336361853766354225558025931211551975334149258299477750615397616908655079967952372222383056221992235704 -37364490883518159794654045194678325635036705086417851509136183713863262621334636905291385255662750747808690129471989906644041585863034419130023070856805511017402434123099100618568335168939301014148587149578150068910141065808373976114927339040964292334109797421173369274978107389084873550233108940239410902552 40916262212189137562350357241447034318002130016858244002788189310078477605649010031339865625243230798681216437501833540185827501244378529230150467789369234869122179247196276164931090039290879808162629109742198951942358028123056268054775108592325500609335947248599688175189333996086475013450537086042387719925 -42030470670714872936404499074069849778147578537708230270030877866700844337372497704027708080369726758812896818567830863540507961487472657570488625639077418109017434494794778542739932765561706796300920251933107517954265066804108669800167526425723377411855061131982689717887180411017924173629124764378241885274 124652439272864857598747946875599560379786580730218192165733924418687522301721706620565030507816884907589477351553268146177293719586287258662025940181301472851649975563004543250656807255226609296537922304346339513054316391667044301386950180277940536542183725690479451746977789001659540839582630251935163344393 -33176766914206542084736303652243484580303865879984981189372762326078776390896986743451688462101732968104375838228070296418541745483112261133079756514082093269959937647525005374035326747696591842313517634077723301677759648869372517403529488493581781546743147639937580084065663597330159470577639629864369972900 67485835091897238609131069363014775606263390149204621594445803179810038685760826651889895397414961195533694176706808504447269558421955735607423135937153901140512527504198912146656610630396284977496295289999655140295415981288181545277299615922576281262872097567020980675200178329219970170480653040350512964539 -131497983897702298481056962402569646971797912524360547236788650961059980711719600424210346263081838703940277066368168874781981151411096949736205282734026497995296147418292226818536168555712128736975034272678008697869326747592750850184857659420541708058277866000692785617873742438060271311159568468507825422571 5400380840349873337222394910303409203226429752629134721503171858543984393161548520471799318518954232197106728096866840965784563043721652790856860155702760027304915133166173298206604451826182024471262142046935060360564569939062438160049193241369468208458085699995573492688298015026628427440418009025072261296 -83265103005695640943261961853521077357830295830250157593141844209296716788437615940096402365505416686459260302419338241462783388722843946886845478224048360927114533590583464979009731440049610985062455108831881153988321298531365779084012803908832525921630534096740755274371500276660832724874701671184539131864 141285570207910287798371174771658911045525474449663877845558585668334618068814605961306961485855329182957174312715910923324965889174835444049526313968571611940626279733302104955951067959291852710640374412577070764165811275030632465290729619533330733368808295932659463215921521905553936914975786500018720073003 -68435028583616495789148116911096163791710022987677894923742899873596891423986951658100606742052014161171185231735413902875605720814417622409817842932759492013585936536452615480700628719795872201528559780249210820284350401473564919576289210869896327937002173624497942136329576506818749730506884927872345019446 134655528287263100540003157571441260698452262106680191153945271167894435782028803135774578949200580551016388918860856991026082917835209212892423567114480975540305860034439015788120390011692862968771136814777768281366591257663821495720134621172848947971117885754539770645621669309650476331439675400544167728223 -97765390064836080322590528352647421920257073063706996347334558390461274981996865736612531330863478931481491964338380362350271734683183807511097331539820133036984271653285063355715726806139083282458695728902452215405696318402583540317419929113959816258829534543044153959951908676300847164682178008704099351835 92552521881196975294401505656851872247567784546370503402756239533783651371688190302773864319828182042605239246779598629409815474038541272600580320815319709309111399294952620375093803971373108792300726524826209329889463854451846561437729676142864421966497641824498079067929811613947148353921163336822026640804 -145767094672933012300753301037546647564595762930138884463767054235112032706630891961371504668013023047595721138624016493638510710257541241706724342585654715468628355455898091951826598092812212209834746162089753649871544789379424903025374228231365026585872808685759231756517703720396301355299998059523896918448 116669462839999965355861187716880953863237226719689755457884414384663576662696981997535568446560375442532084973721539944428004043491468494548231348032618218312515409944970197902589794303562379864012797605284844016184274353252071642511293089390472576498394410829972525726474727579603392265177009323768966538608 -34172517877854802711907683049441723730724885305592620486269966708379625109832852005775048584124451699198484092407720344962116726808090368739361658889584507734617844212547181476646725256303630128954338675520938806905779837227983648887192531356390902975904503218654196581612781227843742951241442641220856414232 126013077261793777773236390821108423367648447987653714614732477073177878509574051196587476846560696305938891953527959347566502332765820074506907037627115954790645652211088723122982633069089920979477728376746424256704724173255656757918995039125823421607024407307091796807227896314403153380323770001854211384322 -9979624731056222925878866378063961280844793874828281622845276060532093809300121084179730782833657205171434732875093693074415298975346410131191865198158876447591891117577190438695367929923494177555818480377241891190442070100052523008290671797937772993634966511431668500154258765510857129203107386972819651767 76559085024395996164590986654274454741199399364851956129137304209855150918182685643729981600389513229011956888957763987167398150792454613751473654448162776379362213885827651020309844507723069713820393068520302223477225569348080362344052033711960892643036147232270133731530049660264526964146237693063093765111 -18162696663677410793062235946366423954875282212790518677684260521370996677183041664345920941714064628111537529793170736292618705900247450994864220481135611781148410617609559050220262121494712903009168783279356915189941268264177631458029177102542745167475619936272581126346266816618866806564180995726437177435 63244550218824945129624987597134280916829928261688093445040235408899092619821698537312158783367974202557699994650667088974727356690181336666077506063310290098995215324552449858513870629176838494348632073938023916155113126203791709810160925798130199717340478393420816876665127594623142175853115698049952126277 -4817943161362708117912118300716778687157593557807116683477307391846133734701449509121209661982298574607233039490570567781316652698287671086985501523197566560479906850423709894582834963398034434055472063156147829131181965140631257939036683622084290629927807369457311894970308590034407761706800045378158588657 61612160237840981966750225147965256022861527286827877531373888434780789812764688703260066154973576040405676432586962624922734102370509771313805122788566405984830112657060375568510809122230960988304085950306616401218206390412815884549481965750553137717475620505076144744211331973240555181377832337912951699135 -36363324947629373144612372870171042343590861026293829791335153646774927623889458346817049419803031378037141773848560341251355283891019532059644644509836766167835557471311319194033709837770615526356168418160386395260066262292757953919140150454538786106958252854181965875293629955562111756775391296856504912587 86831561031659073326747216166881733513938228972332631084118628692228329095617884068498116676787029033973607066377816508795286358748076949738854520048303930186595481606562375516134920902325649683618195251332651685732712539073110524182134321873838204219194459231650917098791250048469346563303077080880339797744 -26406869969418301728540993821409753036653370247174689204659006239823766914991146853283367848649039747728229875444327879875275718711878211919734397349994000106499628652960403076186651083084423734034070082770589453774926850920776427074440483233447839259180467805375782600203654373428926653730090468535611335253 100139935381469543084506312717977196291289016554846164338908226931204624582010530255955411615528804421371905642197394534614355186795223905217732992497673429554618838376065777445760355552020655667172127543653684405493978325270279321013143828897100500212200358450649158287605846102419527584313353072518101626851 -92613116984760565837109105383781193800503303131143575169488835702472221039082994091847595094556327985517286288659598094631489552181233202387028607421487026032402972597880028640156629614572656967808446397456622178472130864873587747608262139844319805074476178618930354824943672367046477408898479503054125369731 30023391082615178562263328892343821010986429338255434046051061316154579824472412477397496718186615690433045030046315908170615910505869972621853946234911296439134838951047107272129711854649412919542407760508235711897489847951451200722151978578883748353566191421685659370090024401368356823252748749449302536931 -31485815361342085113278193504381994806529237123359718043079410511224607873725611862217941085749929342777366642477711445011074784469367917758629403998067347054115844421430072631339788256386509261291675080191633908849638316409182455648806133048549359800886124554879661473112614246869101243501787363247762961784 114503770698890543429251666713050844656853278831559195214556474458830029271801818536133531843456707474500106283648085144619097572354066554819887152106174400667929098257361286338795493838820850475790977445807435511982704395422526800272723708548541616513134676140304653112325071112865020365664833601046215694089 -76882090884790547431641385530818076533805072109483843307806375918023300052767710853172670987385376253156912268523505310624133905633437815297307463917718596711590885553760690350221265675690787249135345226947453988081566088302642706234126002514517416493192624887800567412565527886687096028028124049522890448168 15056463217273240496622619354104573042767532856243223052125822509781815362480522535564283485059790932505429110157271454207173426525345813426696743168079246510944969446574354255284952839036431873039487144279164893710061580467579842173706653409487110282515691099753380094215805485573768509475850463001549608836 -52345178981230648108672997265819959243255047568833938156267924185186047373470984278294897653277996726416846430969793375429223610099546622112048283560483136389901514170116723365811871938630317974150540909650396429631704968748113009366339718498979597226137532343384889080245796447593572468846438769413505393967 32148494517199936472358017244372701214529606506776255341152991328091526865643069587953759877295255050519124541457805199596762210567333445908166076384465183589342153762720515477404466193879418014196727238972417616122646440870364200208488239778452378059236162633837824948613596114768455832408342040970780086 -41095268619128788015767564971105114602454449306041732792746397800275041704886345704294273937217484580365505320134717320083763349380629342859670693445658118959823430378844830923452105707338162448974869312012791385772125813291388247857971218575518319578818336960572244046567099555399203328678654466958536663208 92166550199033418923713824997841892577149715275633481076285269142670107687867024550593869464613175882141630640739938334001211714884975032600306279287443909448541179109981755796752132502127330056736913454039526413284519137059580845856736918773597087836203497066909257930043736166431682872083389105176299181629 -40049143661018504441607875135884755310012910557581028447435354354754245291878800571089144452035026644953322330676651798951447670184106450649737772686119714700743396359069052813433030118630105307022867200053964644574786137276428546712005171080129190959914708907200288299169344380390093918556722227705114244981 108159089972386282154772900619022507336076619354549601813179459338897131937353741544606392560724999980281424266891537298473163753022749859939445293926707568015958367188089915420630082556748668489756475027008449860889202622698060097015044886961901650857610841562477736791450080980702347705778074391774667412741 -69905259478181995876884927656894491893594530150260951315109404530530357998889589977208787140430938039028941393673520799460431992051993157468616168400324834880926190141581037597526917869362292931957289043707855837933490285814769110495657056206391880865972389421774822461752702336812585852278453803972600333734 71821415380277072313878763768684432371552628204186742842154591000123020597011744840460964835414360968627162765288463383113375595799297552681618876474019263288277398833725479226930770694271622605114061622753165584075733358178384410640349907375170170910499615355511313349300918885560131539570707695789106185664 -26945345439378873515011714350080059082081595419023056538696949766471272811362104837806324694947413603019863785876836706911406330379274553386254346050697348395574746891556054334903838949157798006141473389066020212044825140294048709654273698482867946522782450500680195477050110145664069582549935651920545151500 80313315938584480048642653013876614091607852535582224914294013785054094052454758327935781971746329853786568549510067442145637007308960551652864942042189241081946607011847245280773379099020221884296226818685556430275385068764313042226925852500883894269809033380734632866477789520106865758504064806906234130588 diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/hmac.txt b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/hmac.txt deleted file mode 100644 index 4299a9655..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/hmac.txt +++ /dev/null @@ -1,49 +0,0 @@ -test_case = 1 -key = 0x0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b -key_len = 20 -data = "Hi There" -data_len = 8 -digest = 0xb617318655057264e28bc0b6fb378c8ef146be00 - -test_case = 2 -key = "Jefe" -key_len = 4 -data = "what do ya want for nothing?" -data_len = 28 -digest = 0xeffcdf6ae5eb2fa2d27416d5f184df9c259a7c79 - -test_case = 3 -key = 0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -key_len = 20 -data = 0xdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd -data_len = 50 -digest = 0x125d7342b9ac11cd91a39af48aa17b4f63f175d3 - -test_case = 4 -key = 0x0102030405060708090a0b0c0d0e0f10111213141516171819 -key_len = 25 -data = 0xcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd -data_len = 50 -digest = 0x4c9007f4026250c6bc8414f9bf50c86c2d7235da - -test_case = 5 -key = 0x0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c -key_len = 20 -data = "Test With Truncation" -data_len = 20 -digest = 0x4c1a03424b55e07fe7f27be1d58bb9324a9a5a04 -digest-96 = 0x4c1a03424b55e07fe7f27be1 - -test_case = 6 -key = 0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -key_len = 80 -data = "Test Using Larger Than Block-Size Key - Hash Key First" -data_len = 54 -digest = 0xaa4ae5e15272d00e95705637ce8a3b55ed402112 - -test_case = 7 -key = 0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -key_len = 80 -data = "Test Using Larger Than Block-Size Key and Larger Than One Block-Size Data" -data_len = 73 -digest = 0xe8e99d0f45237d786d6bbaa7965c7808bbff1a91 diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/linkparse.txt b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/linkparse.txt deleted file mode 100644 index 91121231c..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/linkparse.txt +++ /dev/null @@ -1,594 +0,0 @@ -Num Tests: 73 - -OpenID link parsing test cases -Copyright (C) 2005-2006, JanRain, Inc. -See COPYING for license information. - -File format ------------ - -All text before the first triple-newline (this chunk) should be ignored. - -This file may be interpreted as Latin-1 or UTF-8. - -Test cases separated by three line separators (`\n\n\n'). The test -cases consist of a headers section followed by a data block. These are -separated by a double newline. The headers consist of the header name, -followed by a colon, a space, the value, and a newline. There must be -one, and only one, `Name' header for a test case. There may be zero or -more link headers. The `Link' header consists of whitespace-separated -attribute pairs. A link header with an empty string as a value -indicates an empty but present link tag. The attribute pairs are `=' -separated and not quoted. - -Optional Links and attributes have a trailing `*'. A compilant -implementation may produce this as output or may not. A compliant -implementation will not produce any output that is absent from this -file. - - -Name: Well-formed link rel (in CAPS) -Link: rel=openid.server href=http://www.myopenid.com/server - - - - - - - - -Name: No link tag at all - - - - - - - -Name: Link element first - - - - -Name: Link inside HTML, not head - - - - - -Name: Link inside head, not html - - - - - -Name: Link inside html, after head - - - - - - - -Name: Link inside html, before head - - - - - - -Name: Link before html and head - - - - - - -Name: Link after html document with head - - - - - - - - -Name: Link inside html inside head, inside another html - - - - - - - -Name: Link inside html inside head - - - - - - -Name: link inside body inside head inside html - - - - - - - -Name: Link inside head inside head inside html - - - - - - - -Name: Link inside script inside head inside html - - - - - - -Name: Link inside comment inside head inside html - - - - - - -Name: Link inside of head after short head - - - - - - - -Name: Plain vanilla -Link: - - - - - - -Name: Ignore tags in the namespace -Link*: - - - - - - - - -Name: Short link tag -Link: - - - - - - -Name: Spaces in the HTML tag -Link: - - - - - - -Name: Spaces in the head tag -Link: - - - - - - -Name: Spaces in the link tag -Link: - - - - - - -Name: No whitespace -Link: - - - - -Name: Closed head tag -Link: - - - - - - - -Name: One good, one bad (after close head) -Link: - - - - - - - - -Name: One good, one bad (after open body) -Link: - - - - - - - - -Name: ill formed (missing close head) -Link: - - - - - - - -Name: Ill formed (no close head, link after ) -Link: - - - - - - - - -Name: Ignore random tags inside of html -Link: - - - - - -<link> - - -Name: case-folding -Link*: - -<HtMl> -<hEaD> -<LiNk> - - -Name: unexpected tags -Link: - -<butternut> -<html> -<summer> -<head> -<turban> -<link> - - -Name: un-closed script tags -Link*: - -<html> -<head> -<script> -<link> - - -Name: un-closed script tags (no whitespace) -Link*: - -<html><head><script><link> - - -Name: un-closed comment -Link*: - -<html> -<head> -<!-- -<link> - - -Name: un-closed CDATA -Link*: - -<html> -<head> -<![CDATA[ -<link> - - -Name: cdata-like -Link*: - -<html> -<head> -<![ACORN[ -<link> -]]> - - -Name: comment close only -Link: - -<html> -<head> -<link> ---> - - -Name: Vanilla, two links -Link: -Link: - -<html> -<head> -<link> -<link> - - -Name: extra tag, two links -Link: -Link: - -<html> -<gold nugget> -<head> -<link> -<link> - - -Name: case-fold, body ends, two links -Link: -Link*: - -<html> -<head> -<link> -<LiNk> -<body> -<link> - - -Name: simple, non-quoted rel -Link: rel=openid.server - -<html><head><link rel=openid.server> - - -Name: short tag has rel -Link: rel=openid.server - -<html><head><link rel=openid.server/> - - -Name: short tag w/space has rel -Link: rel=openid.server - -<html><head><link rel=openid.server /> - - -Name: extra non-attribute, has rel -Link: rel=openid.server - -<html><head><link hubbard rel=openid.server> - - -Name: non-attr, has rel, short -Link: rel=openid.server - -<html><head><link hubbard rel=openid.server/> - - -Name: non-attr, has rel, short, space -Link: rel=openid.server - -<html><head><link hubbard rel=openid.server /> - - -Name: misplaced slash has rel -Link: rel=openid.server - -<html><head><link / rel=openid.server> - - -Name: quoted rel -Link: rel=openid.server - -<html><head><link rel="openid.server"> - - -Name: single-quoted rel -Link: rel=openid.server - -<html><head><link rel='openid.server'> - - -Name: two links w/ rel -Link: x=y -Link: a=b - -<html><head><link x=y><link a=b> - - -Name: non-entity -Link: x=&y - -<html><head><link x=&y> - - -Name: quoted non-entity -Link: x=&y - -<html><head><link x="&y"> - - -Name: quoted entity -Link: x=& - -<html><head><link x="&"> - - -Name: entity not processed -Link: x= - -<html><head><link x=""> - - -Name: < -Link: x=< - -<html><head><link x="<"> - - -Name: > -Link: x=> - -<html><head><link x=">"> - - -Name: " -Link: x=" - -<html><head><link x="""> - - -Name: &" -Link: x=&" - -<html><head><link x="&""> - - -Name: mixed entity and non-entity -Link: x=&"…> - -<html><head><link x="&"…>"> - - -Name: mixed entity and non-entity (w/normal chars) -Link: x=x&"…>x - -<html><head><link x="x&"…>x"> - - -Name: broken tags -Link*: x=y - -<html><head><link x=y<> - - -Name: missing close pointy -Link: z=y - -<html><head><link x=y<link z=y /> - - -Name: missing attribute value -Link: x=y y*= -Link: x=y - -<html><head><link x=y y=><link x=y /> - - -Name: Missing close pointy (no following) -Link*: x=y - -<html><head><link x=y - - -Name: Should be quoted -Link: x*=< - -<html><head><link x="<"> - - -Name: Should be quoted (2) -Link: x*=> - -<html><head><link x=">"> - - -Name: Repeated attribute -Link: x=y - -<html><head><link x=z x=y> - - -Name: Repeated attribute (2) -Link: x=y - -<html><head><link x=y x=y> - - -Name: Two attributes -Link: x=y y=z - -<html><head><link x=y y=z> - - -Name: Well-formed link rel="openid.server" -Link: rel=openid.server href=http://www.myopenid.com/server - -<html> - <head> - <link rel="openid.server" - href="http://www.myopenid.com/server" /> - </head> -</html> - - -Name: Well-formed link rel="openid.server" and "openid.delegate" -Link: rel=openid.server href=http://www.myopenid.com/server -Link: rel=openid.delegate href=http://example.myopenid.com/ - -<html><head><link rel="openid.server" - href="http://www.myopenid.com/server" /> - <link rel="openid.delegate" href="http://example.myopenid.com/" /> -</head></html> - - -Name: from brian's livejournal page -Link: rel=stylesheet href=http://www.livejournal.com/~serotta/res/319998/stylesheet?1130478711 type=text/css -Link: rel=openid.server href=http://www.livejournal.com/openid/server.bml - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <link rel="stylesheet" - href="http://www.livejournal.com/~serotta/res/319998/stylesheet?1130478711" - type="text/css" /> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <meta name="foaf:maker" - content="foaf:mbox_sha1sum '12f8abdacb5b1a806711e23249da592c0d316260'" /> - <meta name="robots" content="noindex, nofollow, noarchive" /> - <meta name="googlebot" content="nosnippet" /> - <link rel="openid.server" - href="http://www.livejournal.com/openid/server.bml" /> - <title>Brian - - - -Name: non-ascii (Latin-1 or UTF8) -Link: x=® - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/n2b64 b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/n2b64 deleted file mode 100644 index b12a24604..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/n2b64 +++ /dev/null @@ -1,650 +0,0 @@ -AA== 0 -AQ== 1 -Ag== 2 -Aw== 3 -BA== 4 -BQ== 5 -Bg== 6 -Bw== 7 -CA== 8 -CQ== 9 -Cg== 10 -Cw== 11 -DA== 12 -DQ== 13 -Dg== 14 -Dw== 15 -EA== 16 -EQ== 17 -Eg== 18 -Ew== 19 -FA== 20 -FQ== 21 -Fg== 22 -Fw== 23 -GA== 24 -GQ== 25 -Gg== 26 -Gw== 27 -HA== 28 -HQ== 29 -Hg== 30 -Hw== 31 -IA== 32 -IQ== 33 -Ig== 34 -Iw== 35 -JA== 36 -JQ== 37 -Jg== 38 -Jw== 39 -KA== 40 -KQ== 41 -Kg== 42 -Kw== 43 -LA== 44 -LQ== 45 -Lg== 46 -Lw== 47 -MA== 48 -MQ== 49 -Mg== 50 -Mw== 51 -NA== 52 -NQ== 53 -Ng== 54 -Nw== 55 -OA== 56 -OQ== 57 -Og== 58 -Ow== 59 -PA== 60 -PQ== 61 -Pg== 62 -Pw== 63 -QA== 64 -QQ== 65 -Qg== 66 -Qw== 67 -RA== 68 -RQ== 69 -Rg== 70 -Rw== 71 -SA== 72 -SQ== 73 -Sg== 74 -Sw== 75 -TA== 76 -TQ== 77 -Tg== 78 -Tw== 79 -UA== 80 -UQ== 81 -Ug== 82 -Uw== 83 -VA== 84 -VQ== 85 -Vg== 86 -Vw== 87 -WA== 88 -WQ== 89 -Wg== 90 -Ww== 91 -XA== 92 -XQ== 93 -Xg== 94 -Xw== 95 -YA== 96 -YQ== 97 -Yg== 98 -Yw== 99 -ZA== 100 -ZQ== 101 -Zg== 102 -Zw== 103 -aA== 104 -aQ== 105 -ag== 106 -aw== 107 -bA== 108 -bQ== 109 -bg== 110 -bw== 111 -cA== 112 -cQ== 113 -cg== 114 -cw== 115 -dA== 116 -dQ== 117 -dg== 118 -dw== 119 -eA== 120 -eQ== 121 -eg== 122 -ew== 123 -fA== 124 -fQ== 125 -fg== 126 -fw== 127 -AIA= 128 -AIE= 129 -AII= 130 -AIM= 131 -AIQ= 132 -AIU= 133 -AIY= 134 -AIc= 135 -AIg= 136 -AIk= 137 -AIo= 138 -AIs= 139 -AIw= 140 -AI0= 141 -AI4= 142 -AI8= 143 -AJA= 144 -AJE= 145 -AJI= 146 -AJM= 147 -AJQ= 148 -AJU= 149 -AJY= 150 -AJc= 151 -AJg= 152 -AJk= 153 -AJo= 154 -AJs= 155 -AJw= 156 -AJ0= 157 -AJ4= 158 -AJ8= 159 -AKA= 160 -AKE= 161 -AKI= 162 -AKM= 163 -AKQ= 164 -AKU= 165 -AKY= 166 -AKc= 167 -AKg= 168 -AKk= 169 -AKo= 170 -AKs= 171 -AKw= 172 -AK0= 173 -AK4= 174 -AK8= 175 -ALA= 176 -ALE= 177 -ALI= 178 -ALM= 179 -ALQ= 180 -ALU= 181 -ALY= 182 -ALc= 183 -ALg= 184 -ALk= 185 -ALo= 186 -ALs= 187 -ALw= 188 -AL0= 189 -AL4= 190 -AL8= 191 -AMA= 192 -AME= 193 -AMI= 194 -AMM= 195 -AMQ= 196 -AMU= 197 -AMY= 198 -AMc= 199 -AMg= 200 -AMk= 201 -AMo= 202 -AMs= 203 -AMw= 204 -AM0= 205 -AM4= 206 -AM8= 207 -ANA= 208 -ANE= 209 -ANI= 210 -ANM= 211 -ANQ= 212 -ANU= 213 -ANY= 214 -ANc= 215 -ANg= 216 -ANk= 217 -ANo= 218 -ANs= 219 -ANw= 220 -AN0= 221 -AN4= 222 -AN8= 223 -AOA= 224 -AOE= 225 -AOI= 226 -AOM= 227 -AOQ= 228 -AOU= 229 -AOY= 230 -AOc= 231 -AOg= 232 -AOk= 233 -AOo= 234 -AOs= 235 -AOw= 236 -AO0= 237 -AO4= 238 -AO8= 239 -APA= 240 -APE= 241 -API= 242 -APM= 243 -APQ= 244 -APU= 245 -APY= 246 -APc= 247 -APg= 248 -APk= 249 -APo= 250 -APs= 251 -APw= 252 -AP0= 253 -AP4= 254 -AP8= 255 -AQA= 256 -AQE= 257 -AQI= 258 -AQM= 259 -AQQ= 260 -AQU= 261 -AQY= 262 -AQc= 263 -AQg= 264 -AQk= 265 -AQo= 266 -AQs= 267 -AQw= 268 -AQ0= 269 -AQ4= 270 -AQ8= 271 -ARA= 272 -ARE= 273 -ARI= 274 -ARM= 275 -ARQ= 276 -ARU= 277 -ARY= 278 -ARc= 279 -ARg= 280 -ARk= 281 -ARo= 282 -ARs= 283 -ARw= 284 -AR0= 285 -AR4= 286 -AR8= 287 -ASA= 288 -ASE= 289 -ASI= 290 -ASM= 291 -ASQ= 292 -ASU= 293 -ASY= 294 -ASc= 295 -ASg= 296 -ASk= 297 -ASo= 298 -ASs= 299 -ASw= 300 -AS0= 301 -AS4= 302 -AS8= 303 -ATA= 304 -ATE= 305 -ATI= 306 -ATM= 307 -ATQ= 308 -ATU= 309 -ATY= 310 -ATc= 311 -ATg= 312 -ATk= 313 -ATo= 314 -ATs= 315 -ATw= 316 -AT0= 317 -AT4= 318 -AT8= 319 -AUA= 320 -AUE= 321 -AUI= 322 -AUM= 323 -AUQ= 324 -AUU= 325 -AUY= 326 -AUc= 327 -AUg= 328 -AUk= 329 -AUo= 330 -AUs= 331 -AUw= 332 -AU0= 333 -AU4= 334 -AU8= 335 -AVA= 336 -AVE= 337 -AVI= 338 -AVM= 339 -AVQ= 340 -AVU= 341 -AVY= 342 -AVc= 343 -AVg= 344 -AVk= 345 -AVo= 346 -AVs= 347 -AVw= 348 -AV0= 349 -AV4= 350 -AV8= 351 -AWA= 352 -AWE= 353 -AWI= 354 -AWM= 355 -AWQ= 356 -AWU= 357 -AWY= 358 -AWc= 359 -AWg= 360 -AWk= 361 -AWo= 362 -AWs= 363 -AWw= 364 -AW0= 365 -AW4= 366 -AW8= 367 -AXA= 368 -AXE= 369 -AXI= 370 -AXM= 371 -AXQ= 372 -AXU= 373 -AXY= 374 -AXc= 375 -AXg= 376 -AXk= 377 -AXo= 378 -AXs= 379 -AXw= 380 -AX0= 381 -AX4= 382 -AX8= 383 -AYA= 384 -AYE= 385 -AYI= 386 -AYM= 387 -AYQ= 388 -AYU= 389 -AYY= 390 -AYc= 391 -AYg= 392 -AYk= 393 -AYo= 394 -AYs= 395 -AYw= 396 -AY0= 397 -AY4= 398 -AY8= 399 -AZA= 400 -AZE= 401 -AZI= 402 -AZM= 403 -AZQ= 404 -AZU= 405 -AZY= 406 -AZc= 407 -AZg= 408 -AZk= 409 -AZo= 410 -AZs= 411 -AZw= 412 -AZ0= 413 -AZ4= 414 -AZ8= 415 -AaA= 416 -AaE= 417 -AaI= 418 -AaM= 419 -AaQ= 420 -AaU= 421 -AaY= 422 -Aac= 423 -Aag= 424 -Aak= 425 -Aao= 426 -Aas= 427 -Aaw= 428 -Aa0= 429 -Aa4= 430 -Aa8= 431 -AbA= 432 -AbE= 433 -AbI= 434 -AbM= 435 -AbQ= 436 -AbU= 437 -AbY= 438 -Abc= 439 -Abg= 440 -Abk= 441 -Abo= 442 -Abs= 443 -Abw= 444 -Ab0= 445 -Ab4= 446 -Ab8= 447 -AcA= 448 -AcE= 449 -AcI= 450 -AcM= 451 -AcQ= 452 -AcU= 453 -AcY= 454 -Acc= 455 -Acg= 456 -Ack= 457 -Aco= 458 -Acs= 459 -Acw= 460 -Ac0= 461 -Ac4= 462 -Ac8= 463 -AdA= 464 -AdE= 465 -AdI= 466 -AdM= 467 -AdQ= 468 -AdU= 469 -AdY= 470 -Adc= 471 -Adg= 472 -Adk= 473 -Ado= 474 -Ads= 475 -Adw= 476 -Ad0= 477 -Ad4= 478 -Ad8= 479 -AeA= 480 -AeE= 481 -AeI= 482 -AeM= 483 -AeQ= 484 -AeU= 485 -AeY= 486 -Aec= 487 -Aeg= 488 -Aek= 489 -Aeo= 490 -Aes= 491 -Aew= 492 -Ae0= 493 -Ae4= 494 -Ae8= 495 -AfA= 496 -AfE= 497 -AfI= 498 -AfM= 499 -AfQ= 500 -AfU= 501 -AfY= 502 -Afc= 503 -Afg= 504 -Afk= 505 -Afo= 506 -Afs= 507 -Afw= 508 -Af0= 509 -Af4= 510 -Af8= 511 -AgA= 512 -ALDs7paJl5xPh6ORH61iDA6pONpV0rTjGiTkLEW2JsVsRKaRiS4AGn2PTR1UZXP0vXAmRXwdSegQgWPUp3Hm3RofRcDh1SykZBLif7ulau1hVO+rhwRyKc7F8F+7LcMf/v+s73eOXUDbbI2r52wfr7skZy/IELhsC8EK6HzhACI3 124241322153253947064453752054205174382289463089695815605736438952932114700118408072544073767229325045596832952652232288773280299665950768731398747700657715829631597019676014848183966683866396215048196276450953653433516126074463193382764063985175903718735372053536664711482497859539116009770850968340298474039 -AOzgU1s6Pd2IkrJlvGND8legXTe50nyDCocI5mwT9rW0YsisY5jaaEOcu51BAq9MmXBPeVX0k/jlXwH4Pn3mCpUAU1rEOsTdcmSJp35siKliDdhTZHHdZNMW+igfXGX5OCsA/BaBcGnE6NnrGWXKyTOoVUGQLEkL2T5yhNUaCT83 166340174936369324883416612727439279977041963320514134445183426741643586944819834936989524033374309932122967866930503619179389342537723598234062828695747850043368572301869699886931403612266216965783079972698791813140295203826980649434652168563255385527187360027803388963151668338040517316899628026707657178935 -AO8hrpw+lDiJ13JahLtCb1RenupQcNd0wlTSck9OLL8wB/x6gAoj0PTLV05eZIbz43N3GUSDmmckjlxdHXiBJ9rsoB0P95l1CWIV+4rXblCqxmOdmlm6VZ13bqbI0x7l0cjeMrkmk+yJ067WqUolqQBlUWMTuJVfkxALJYH5xr/C 167923899524385316022824282304301434707626789716026029252173742527362300338760906999615029022863637963070711762128687835779073122264515776657475985362344360699359591353388569856862973447791264902182048648600267737826849280828116753682917256540180401899752566540869918949003470368970029744573140084219550547906 -QxAn7yrdVs5tlHV+Glbqdaj67c6Ni8am3bBLOL8PV5HbdrLf2xIPmNugo6MfUwFSnT+ZPJ51+VTOsItaNwCFju0Eh1cqyP3JWyLRPE7emKuo6xRhf+5ik0pTg77LEF4JXW6ofDqirpR4alFi0G2d9yImQPphsYJwYGF/nNT8u0Q= 47093316905427544098193936500644355852669366083115552072584429220248776817916430034648347490325490701471113667554329499736495877969341478442613611948220957798780043076906836236556612316544460763366275536846463456405604189392790111985912854476264292503164100482712281088955640964034295834935468665872932715332 -AI9PVzrbJUvmCihwSFans1lBKwudGEZpWWu8pkSK2zVgzGhMvUoGgMp6TG2zsUd1tV8zv7KsVD2t6pXmjT1wPUynufq97GVHI06SGpflDTt30WboYRh3DgYxvso1sOjUXpnDezcaqc2Aiz4nV5MSShkBlyBjA8z2worHDE+uXqw0 100635651531872121827765663065728398779771663753008344681972226973080394359405041113312675686974926993279775427390065833081040771269307007695807025882757371805607979134114890454059957194316765342461291139168706134406917264848659448693866813989352429841300235734400772946895458374870482441457514575059390213172 -FiinVicXOqqRLpxcGTorQpSAGeQ/PfDOuzYK9ViFtmPv6D0cYPfhUH4qXEHOejvmX+0b4lfaX8MWPVZxlqpfXiU9BhG76HJxkLF4ysipukeOvhoHzvcxE5bnhSF1i//bOSifATBLBEZInwqSVg5tHHPuuCkwTL91NqhOulp7Lsk= 15560440884463435471963622630292643727112462888414585143143739400703889930416938984547754943252935620248108237258540176511252143752416771350868493435174026287082706690332705481726295797196444796135827460509780634261726494455068460028424141500629527968240913757449787164107068039175831847071025316475940056777 -aYrxyQN/hkBne2ayqo2/iDLF3DZGgk080SOMJfsj9h3Z1OfFZM7TJA+y+/O7niqatosvKrfHrAw+Qs7c6tCZ6NPwYJ4QJLOF9bqH2u2a3fkI954voNUctlUagYUJsZXV8hdhLM6NwUyIZ3ZFkPcpTZp7nKQQ84tr1a8VjDIT5/o= 74114640794666001532816944350975062126079079113921109750255283189037502412929005615388097912507598112836936032143435813588205939470002911374442844578739574773399427907766548612582213272643279263782396527705126350063372192910060171635870872236876399794128383338399728947176692692942605589343038282957050865658 -AMpCUeKUX/vtRslWiUUuXNl1KA9uDAWjMUkTrdsxxRDESI7iZIn3TR9lW+0kV5fzkLF18iYLAwSGBmX1PS/T0UVFmoBPJ9yS7yktNL0lpQ3noyGFn8HHZ6XB3FkH3jegIfGbvwwhnhhFzpHPrXlpO5iU5Y+rexzp2XHWt4yJGuIL 142031143422642739313498629438991149460874309300342349421794421544918823888598660275343727563280565210534243383322796489809683834300630555650331646026843796764549231159336347965502383849513994449309613369541991287590422095953275586374371960367000083487965487661436037637475372929033613295072397262739084075531 -AIMIQVz0JIEKEI+PREu94m3v9XoiU/Q0CpsSuqkwSSje+Wyul5ea9oU5qgtOpdkMUOW91BJo0DW/GMZ8v3C4qyyP29TtjCcAHObJi9hfLSlnTSuzXZnDStooYYKqzfToLToCaAJKCXiXAVW0vWtapLnyqafrf/KgyGZ5u4HfXKY0 92013973253053602863003242446596060337454881568126916916519869242232429836082762281129448384605359749247852792606718908482332975424967542242332487707042773885428473061056052851768940900752317020681189773407893371297668591494665352294885305475871917069040377145530889271334616499701769138948975263435137525300 -ANfP+zPBTR27afneyac1KJhOB5Pq3AXB+SoAXJvQI/GkSoNhw5KdfqoIkLcoJi8wClCm424Gm1AdrdGwDFOM/iKTSPkrvMag93+b2EbQGX66/n2X3YRFNkgq/Gtb+2M8oCcAL054Z/iiMD67aU5RWzjqS64ePHsn01bJ7dqLgpMO 151548639867177154896951257541227014781655576169318283047778755573323724856619156348444192550664853912434681577093459933599575436686424046466113215132845213008587152894642577278656978304699131916299275797578171518984206145555369576872231567191579337901913492071976578289189524123204040497290426960375042970382 -AK0kHtacLGu1NFWMADq2rG8hpzM4UEYyPOL+aMJbnwXcUYptRIxb0YFZg35RN/RiZs4lQsiq+kEJKzMMV71TsJq59vMkIZhZoB3t8g9ZqBZuq0JYcTICDwRpNSttJidVpJ6P9sR3s1xPMYKdlSwt6EEc9htOXfZU+yHKYgn98X60 121583812047864398969816595368193171848971298823388059338224714026742264861090347096116404814514279627148994345584790617974476594451626305761040465570524035369799925437276511604752129817947910677564301623631349399504187314174538914591944778074509068973226322566160587813128746039859381466427380402262866230964 -W3sZlWW1Aev3x/DiH9MzwCAZzBj++x9cknLfGAHwgFqkLH6vimEH/r8hi85hzlCOG5CjwhoZ0D/Hsfr26ZJ3X4chG84byrfDnek1V9mm1++v+clJvlYgcuVgn2Opsba2TILTm1MDB+Ujs9brJ2AAKrE9+ep5nvtQVeG9PUGtdlo= 64240043913835461386212515483198059541440539167395859777194837833769712010594411295323900074066077107346806786205590345517755715510695858065925747020336398305793661773798243627926904542715123849691490667964262778804487343218972081260210371192903128886030021862362141928329650003493687310970684093289133340250 -FTQRk9/BIj21gbLwI22fHJWYj+8Ghdcc613hOtJ+/hQmh73HwTXLpaGK9aCptxVbpjW0r/bxaRjmgxu9u1CCZh5yRd7Z46Wk/LIPXGd3ycQzqRMFB7TISFQGJIcFoxRp3Eb5wa2OyrUg7c/D+kb7oFJq9P7mEwIh8TpLzwmu4SU= 14889529068556301710329043521845510156960298822469914567758538023025100741826628180855835334285179977296740667353391766487166458692144569279381035582718738461626140662441222061900764829681913534146898551570916312642104487829660946024590782808750587095559047648957238487820069966851521487428624726655438348581 -APYXO6uGvs9qWiEAkcWsaCaCrGJJCP2Z1g++XlJ67oZIgEoWITn3T/R2/c4edAfwUUzNHAYZN1h2dSrRoqlrRXrbxFtGOuRCUrXcGLFFcEbTrtm+z5z8xGRfcorx7Cu3FIBPMK5XcGPcbRZdyP1gBkeDMvuBNAo0/To+LP/dhCNM 172810804474418448604443090732221483571611665465870520701624598983692130272337358406272727413570938793741430131635927237320173996217984860203754686741782921346604605228620148450611724714868551781003004492587584071978757421616871762681049508123223983431502852926521520561941051298696758046005573332373854233420 -AIDNxhnDEe1kTJ3XGfTS8zKXeXPRdw5yifm8j8Ibzj/quExy7hFPtKct8hRskPR2qwTlMiW9Ra8Npg2USsqHV0rBoIkX7E3psxq5LBfp/q00l3SEBuLL4K2FGR87bPgU+Duk3RVrNMnColiTcnAR5XkoeWhn/r9MfJMIN9Y0FEh8 90449107125498302548188660544012777357148118984122992664008792590422284061463729084479315745509706793674355738023180454297730948397413371686013210006834869294564190666543874617716180411178090109573192518129248278410216362657350215009192850017507998797754539132540293137589672869131300859207213449571846080636 -AIRWavxYRsGlH0Yr0DudwrpYtbrByf9ZsDawKom7ubiRfepqYzcBlwt4adMMnkYSaXeYtOsD4KBm2ZvLKN3++RkYNmxgkyarORBEg7ERyiThBj7Ksw57pNHCAoHtBEhH7Wp9mHhuZtPvPgCEptmwCu9rYhLt4zZp+Zq8a02dkXvM 92930601962515884925250459851491509622611227724602941760145671636277317511265759558869239180653492283311584982044597979173761619470326096725838197524704577188104121460089235709339932110663536557497112887112782062772810759971739760085128369628777812332518137107605855679096146402427144185104230596200130247628 -AMNJGLcAiJtL5fUfkesWKYJurdYSnvsOZeZcrg7bemkEVjF6S9CcojimUl+ncr/YY5/EXnU0mg84fObtDxWWdJ7z7l0CFcoALTyEatDYKshT0xvdKY3u+LUShxIAyk8EcGnf+KoEaa4Mx3tg2oTBnVegXClOakNTWw8bu2ItagoQ 137134165107366719462230252606689766470445826753581409513106273517221906418464863733870948759313279128624638614534848890858250894834883265387344539280755177217350585564186248554307335197387734431939154077778003706720017441895613190141376534460438929588407764609772857975000507660651583780079804513519571438096 -BmGPZt8XqqI1PuLN4K1/PZMi2rfOYtHEMrcwZdSjKRm5qTkd0Pbb/5zPV07TnM0uLRvIQYTLloEY+GYyn0K5gDTEZpEtQ8ee6Y87zYGDwcf20eqYNxkA7FVV71vqCP/Uw3Oi6B+hMvsWZbvv2vH6MkAeADCrezOtwqVS+irftyc= 4480956865245875120472829476982311611308898564405318773810939350829150182630548948231116574193987272498161864310429976564278532538229396846813874244969927890037756969704618336242255039858182439641759659872128285423988638335967412040624105824571426792562334458751137508116412821914961236269913776304372561703 -APqFgCIYbJWuRyEGuOStPvcprj2PILQ0JpgwQ2jLKn3DvkWSd83qh7PWGKozGavsjh803K+ZzI7P2wP+Nc0r0El3q4nzaHvKaCtVRyMwbXv9wYLFZICeM6J1l9ljUMts4tbDoPzkIy3ScU7pYxarBWqMkcBU8qL6NN1vEdkeu0fW 175922170410080716883576123079908758276229469783745771772401183721225804343343063277676406040455068452258961299511343441961963941297631097736305638850193978800615558067791016294285848963023036905095022181004058235239390870177623185946205281141386416867569004073524130001309977475780893497185890756991672600534 -APA/rCcGeH6A+6ZwaBBDM6mB6tTD8mjkrOWEo/pK3MCZ+rrErMBnFp2S19GhlLOfuY8BHS+D834Fdm8+3wKYkWnXZpGb+e3v8ofOQ34G1HvzULOYtrEiC4ISZRt2SSyz2hU+PBXjVnplsHWTRxZDmBxTJdgli4ItAqxGCxj/aJ9m 168708388929747822981923386197903561880341990893945097067702518857172133291360611402092714329372304718329568897960770488377524912057166920574319430820488930520807742026377043178502591886293565177404635365772829346030773275726024973460121300339258054215286249329967181244588558220467488638468686270735376228198 -AKmwrLP108dCGWOWxE/6woJVLRi/Kra/DvdsPkkrZQmWIlUT7IvwM4gU6bUr4f6wpT08cIQls2cGh7dbSEaO0xLa3mmtKhPiAlzSnz0wuifF3JT9U3uXgUfCZuFtE0z7Oi7WTOrpl3k3GA7JFvXnY0lwblIQALVf6oWyNETnajGl 119160465301384937485959146028591622947513292915838943629387700439301197965652871741710280647524383590817798553034250156068573474278225305190573334054718387045488098320076877626430189054572361967283632592181431701411266656256255758079114072932140551282607247364388070762970060420036793573956057551235306893733 -VTe3rCzAL1Sljo3QAXEkAdBy1ZARHZwtrj6ZNRa5ttqd6/l21g4z3iHCeGo4rnE2F8wYTy+NlugjXw86OS+XojW5y6UzTtx0HX5IJ4POqN64aXWmaklGzroBEYWeuFFKcgQN3NOxkuJoDQ6VElP7Epz69kj5CsKJUwL0SjbNrFY= 59841866347633473702601462509811342285929528424012250265905695635971518533504187799047710303717472950129869674786231155102509311322791323986824635569605105662070745033595366004805920086888891275288347907772640070278731650628917037915863439204501060041944275512863990729926528905725569467329169134226609384534 -AIZt1xGhC/HrvpPASsvVIVdsu//tn0noyJmVYh3FdQ6yIh1uce47iCsrV1yvYqx5ZTbC0vnfnbjFcWqH+HtLX/DelgvhEwzqJ8hwQrfE1ShLG4ZjAVo1Z4GCjrDcEUMlwKcunuSJssuxeQuXwTLS92+q6QeBSS7OmfxPX29CLb4B 94399298271083745508290936113986978382457275531684761701599029877008571741877683365769553170771833981099580359640421358853566501815723434822307977440496208486103754978934472597505865596938563438311337045817621762649604204720249750058676095769230214181772215323235427976398686727606000594646472236822594174465 -NIhTPpWXS82VTA0LTd6TfM+HgLgUcmvnMYtLqPpuqCKZwalAycwl0XFYNyVvaY21J94j92ts/lRYgVtHDhk7/9nLXq5js/lsUnG8rWPHJo11JTxvW+df88aX0pw8u+biOWt87vc1MW1dsMTTsJFJAeBx77qU/Cwto95IVqM7vSE= 36889590210230649939994518345793530042252563793069578097360569338647730438860274349862767107939590441616825589851005429465345268710487649366046960918184701290985280638488938340668212498212581853679035928093386035688597446809895381618260692378376844452061580510108168030682664507293277674052032318576713776417 -KXdi4A2Z7tSiiX9YGtDtxUXIfQvPhcc48rUH+Q2SnXL7fLNmr+F4Rf3RiFBRiHKocPfE94pothop5qQJ5X221/DbEKWK6s+ChfQ636jvRxojoLMab3dPtaAPpDJHrfZMxbT4ZaDJT0tpA2e+zZrzBuDs+UUgCpty9nxtdm1gS7A= 29118662951481660380477444121362422614202367719725087486810943918529894738076273660245405874301505615796632229852040910511025841576465052938308369421493312085081188509808322692130449282585522349552501983296872614029139293444558468751646868108213623606366977549477663987815308260383403466635254115908032940976 -AIOTBZQR2EJJRmoWdRNFLG4fceoS3KnRTHRpPdllhHODqdg+QxTOcOvqIzBqgdD0JgO12SuNAjLQOiz0jhd02qkXw9Y1adGuKvL97ARFtNEuJiNzFAj7KpDLy2zk2rPJp4Lp7cjQs0fe8BQYnTzTsNRGm+4ybln/gse1YWu9w8y5 92394618277596007469808288231093678404089765494062813665106014405059399079199990128824492247005602685377185496959522609467906358619318009231448503013528692450191782140091818984176967246749464502089280153086163239846744554575017530385347720563798041108608545014076448155956762636929707905789978331102411214009 -NzfbJRBF4pqEeborJrjoknJgpfK+DZh2k9cE5dcElMPZ2Zn9im7desWGiBSQnu3KbTO4L/t4+m6nFTNcbIJnqbVSMDHdsfG72rG/t89aOuECQw0HMVVgONNNa6i/mw0jZSWnRLD4fa1YgbUlMd8jeqO9XcBDB4mVtDTxyeGa3vU= 38775530011374537813502898274019389132620116890266344603221997943675706375698597061571989090674289834838060050848545748579361837989319487970580969082824601965845786771062335733318139530316825802589479118956745739691326447349403950997231306042638797277408335778415717988679050762936401945487285814799382535925 -Y4BVPZ6necuLSwaqYEPeZp0lt9tTGFl/WCJJbwg7XpyvuwYKtzagC1NLzY5ymBfwGFw1yRlQuyGsYd9mBfC99DuVCIeh0JNrhJN1bNfoSzy5UO5+dmTr+dm66VGSRS0tFcViDTfCIleTV+zxo/xuZT+Bjxq7kZue8zGkjp42Kmo= 69872189501616471647606976308259279995249122669120675885925763529037695584466011511740991152346215507625265226811128801733353566555339153627478941716586678793853828514394269931890370517258825006937741437480128878717892485074131232336852490940507703859793477547154689914725314529986438108117871674332626168426 -AKCP9Mto4q/a2xNqM4N7PekbKspwt48OGPre+iqVwPrSP/jWKxg3CvvLNZzN5P+/FiUGIklMMFJ8w76OaHIPqKuwckj1gvCLECJEE+UAZWrNKPmpzd/ootN9/kQhNMuloTFCyhXAUUOXJ7Z0WVLb2u6fn4zroszSMBoWQEKC6lcq 112750701794692134675959811050012620191158543234019977304167102486465198271340022889272244811582365901584420008564301920174477182946432553537794834985703732129975734658113610563794129371053853971031300761815004524681756388784922001759202643614966614186697992611399618828963452661554240362943588548146868410154 -APOTAFA2waoAODECaGNgCHa8dNN+cjMnD01M+IeQFytzo9RLMzzzg/gpTUFpyLtFMcfbCkDYQMLXwE4crTimdz5sVvjGQ+5fSFQjoDY6Bw7MO6NAcLzlV/sI/1WyNBKaLQbcl2720n16tdUcdckQNnV+cC2J48CVxYM1c7QQlxA0 171043636512232272455501595416608280460445723238023572475354665686544174728784633443479486247342724860289312593374524429736857970220153680852977711594899595712511352458264354251161579203922747468321999465061463474727943140910084880926005209538535217464825087114791420210981711903880998556269523363208766099508 -AMGpxRlB8WVnsGqyyiy3/mzrPymtJW1o1HcDErK11ZwQV5PwTF3c0THwlnxDmcziLWHSWgPQwfRddVDCXMGW9BffJn+XO6aTcWDPmDAh+1DbWJPE1aqApGbHvQ8HONy90dQMZf1ayuwceWCVTuU1wnHdo9F/sIsRbuu7ic2OJDzY 135994898408425255747055209966103741651849229328236418804928584233229830656742052333413774490626915784901255640138520158698845938184666683995579777154437927013722740366497459963753542029774185193376253885864514386760437194444013834088425088260658670140534670789371556026135595577395047002643901630053097946328 -AJAw4uDYdSYkOrjtwJVWLv3pi1+UxWge4RmkWKqVquTsAVcT2tRZ+MFdHM457Hl7fmFIyxvGZQy4c2v1AbHEfPR8ID2sCRQpdcfrxEUZPMDqxfnHHm0ziny6W4X6ggdBzMp/sBWaVNTBL0e61/pELBGYNRGFMzGws7HQkr/sro1D 101254336834199527040756567675327011562230719161388328289463594628690618298993695452746353237675715087353241661592074446889034411683413957950360025295995263477031608845241728493807755308798509893719674568267846671753070163272328014412744008880395248474446310603301447848026040555910147467745595720879397834051 -AM09TdtXgYL4FI5CGNiVjf0T/AN/pZ5zZsBOi1MAUKMURiXnc1x8VKYTqM9Xb86mqNBBqphynIQG6/3e/YbGJgHlsSdrmKbo+P9daMr02I/7Z76/7Osa8+7Ky6lhVCbU3F0tBH4WvopkCQmuJ267afgvDD5kB+9uNr28deMH00cY 144124056591600568767398029380314564902309327093641173350205276895603332085753288682409279238417493662029954512382520307259348748813767324609446500382301421328754981718014234615523158887865271179104711373675849713359713282937065993613915015084108700238420759344034475478243507306107546245540340758766909867800 -AKDhK+/BKGXbrbBh2vM61OP8LN81YwlJKe68KNwUu4tjXlQg7i49Jis7QKPI/YFPUpSNTu5N2iCgeMnCX4+r3NAfivOao9lw4N3nc9bi839SIWdlokhwBHBYmCIgjehUeBAdkU4jKqlE06pIrpRmSvBtn7O4aWTbT+C++ViYAcGF 112973480670453665543892521898882856059335781900313607790238402438320486344365203510769919022496690291280873287383392088872774202832124927485754495093552572232234532821756395965072330282810574669371524103814871172318519695921477775100282448247625395376072233777533359104085023946019406729587713120941266551173 -ALxDiSxHjfxvP8ETvpE+SyDPTS7q3o3zCK519WTepygC58KSRfvDnIVIyV3toQKzgqD50kF1Ni5D/wuaSs62y3zg3kELX1g+WuBCc8+x50+kDtbHXa1Me3et/OqVS/QeppkcjK1UZMU29fXze6P/w6aQfvKQkE7koeQtZBKkYc0p 132203344567902304830160099595561253300484092355345272411265169562971473393256361094745618829297250316196312398486598077249124198329075791740755862221465178128527292695331061023291345396067863215552021206609309872689233899464919108147533679134727064586730810633196817136739658243232643507412032417747255282985 -VF0YUTvy8Mfi5o6X06DEvLm87r72mAtTdyyLNr0/GXlk0Xj3L2Oi2bVUMtcXQNRXg/mkdGP88pgdaP/eMzqkUU++vJ7t3UgOC1i3SHegpiBhhZh+aZHH/wjFV8Mz2XZB5z8MpMgN+QwALK1TT2Pyt/feQTsOy0imVanB5+OvCeQ= 59242171319056188000481457618922567543461456096441095927600135114274111606802456239311634638536207588762066940095527920532936960549439269891703098017342732142860571277442598349453761561189719823290643146391349978698217357430495238876700400634593256155537598291759795109752990651995982467695091946768443574756 -ezpwBt0N6QhTusiPcKrBvSB6yuk/KShTLUFQHdf5J1u1fgDYrp+aOWuXOFVfOd0bweiG4UxBQNXB2IDFWfYON0fBoaDqNk/41YyqXBSkKbiNWLi1y3zPmwTAiwK0PzYp2EPfk/t/j0HsDbvebu0ygcxb2tPqj4EQ1TXEdD007kU= 86533835313999945727720083706940213467453975054116752898416709637030456504024135513972566184073843025739226187558143854850980654667596935003124034699919861200483994576288766702308068265526535622439762454501169018136389983894783905946543636163866717367545972667876983557989192393479830223914708619684891389509 -U8BT26zT46tTZnkmTNxGUAlXbJhk5cNi4AMSd8fSvZHm55siMFGJ8Jl7mtdzEFR1UFAyEztf2fUhxdtMLe8ei/OJgM0j7myQ9STucEwnsShT7QS/DjBmfvcC42sl1CRpXkb0ZLrEJCPf+crtLKGrG7ExS1oawIAgALBiMQIL6mE= 58812148564290791415180898639607206220554150794356494356250223429674091688305329629529905854147200457536549527135776329004085047145097927266797668252160196098870200925284256433894773392353678965699083286106628662506590268955650280670838340651598082083455821825076016227525614626726458235627297885815646710369 -HfYii3U1SIkBZl09RHaGGA7H3np+qxyNeeCNY07PDl8LwZAaaYk/bHPeBVboan0I2X4o78zCD/gFXFBJ4rxwwUsVjHEioyO2JcpV2/oDOelJBD//78WzBMMSWt7ZKbJV9uYr9ZUM0BUD3fsk1esFCEdnDJdr86U0UMmiig2R+ME= 21039655953870571289679214995029926285040274249531458675115179004718812090027267801012507748013357317597416722235988917212676802092082137617336199787762782958420742299451435320649616271885264333948336627286638368859041172783505464468640994920853000441536629081040963398001710173320125308624362209157720438977 -AICOlee3daFyqTrTdtWjVb5M2rclh9BpIo1CRvKo2bF7NYcjrU0/VvbOnTVXDwdeGMLupbi76f0BrfDxYtkzMXvIZlgoTit4g5ennnklDHFBC5cogaGlri8U28w4/h5oMunZ1O4ezdpRgVJe9nTP/sSEMYiNS5IA7Zshdvm/XccF 90275777798511290102824338787811725003177532250296755103300529948194832904403489332420505850668003332750291879153080212231952155092379375422537931240723308384652734942204313672973885652497290433943089371705605128843469306776615573873479312715317072986990219294942040272550822460408702072075001377245051602693 -L0QUSVIjxvE201b1ztRZyOOxy8vkUz6626TH4tbLwXjjc+AhmrvplaVlavnOgHqve+/L18XNuAYP4BqdxIcWTx+yxBKm4ZS92dRJdcAtccvZpEJtYjdJvI6qbL5Ph6HluaVZwp4dyFyXuZOJGTfYdTb7PUWM0jNT/xsqyjxSQ2U= 33191267986826803728285073844005357792766429917696698533494382218509532051029343127452480789088572904364699220151221680328978554239767633887572649589456766209242252549993823283929686430100804479376247660556781589549613316880150951333982646510273364068770923588389668733632648346075516618646974067295703417701 -APlD9ECKJuACUmQUsbd2GTOpb2PgQVT08C/5hyNEVdA5bWoICX7epmoCKCybdolk+cfEBP6fSz33j+Vn8MbeiHBLdmF6ETbmcyOjldJ902MDvU8dqAa8IgEZN5Uh5x/xzN+3dqk9o0ji7yi291u90rpfIh85PPpDat2B4l5zs9i5 175040148659257809883308984693597046378367187659749953472629929701758633206586720399909808941145946314755491399962797299295431089674294356220216615950668954164397362123668926410543898553191541662075745481299747832013627018846822876386760538344447600390187421938699064459451308870669878673306013635576901916857 -KB7N0tE+A5vFhyrd/m6Qe1wTihkjqmBn+rinfmMAzRlvtxIBSyDLzQsOQs7L4oTG64ABU+YwcWVijvoeZNamaxGl4hatAH1pRqmC/r8FMvC4vqiFTbFHzQhkjM7uoHD1aKnxyBVgjMj0E0KZjrRxydZjIR2p13FXjLP3UQSFtII= 28173452509830313810392326357601136401754938805266458365469366750775669869895498658593356375710132149836430968810246171974040975430205200958564616924399794768861923079158311829444850822144940112488994119845741191519421434257276977333662656888696213514226866147767570046232093727585815615828360199830275208322 -bxFgV7eXwnbQScl4VzS3RTdcMW+NY6pcGkT1UsqHIeDVyBb8DnH/2/Z+DX3zniR1iW6FPdvhJJeQyPIax1ohILa11R27C1TLxGvTrRBGUycxjEcBIxamHveBsXbECWusYLEakeSDg9x4BTWMz1rTQajkorBoeEjYuW+xBxQtXME= 77994515143740690952370766995249847650881300682406161400195705464876513409097078624084133111941171517535435606295232558665316819077765607639545069239931096306624817379462598756505457054433358548941076472902905065316335603665413114267741896000877284610377452471067725794013283338924419969559537339967562669249 -AOH6E2eBzD76QdTJ6QbR/7OeF7AagUif9pEYx7fMqrIsXCJKKpLV/RHIItCDYP2WO4URCaVueoAJe3M/Shj4o6efvH9pf5Q8MLM0rn5MTHWhThivqYQDwjCp1ZsPgq1VFS+gcnmwgHhj2W7XzJxiNPeRXlxI2vL+XTT/wPBYhqEP 158686346608862569574095184731081143351413141116869402750758091813874232272198082464382169470744476593016502816563462778075467588097653320101723165887488327616477297401486647183409348122990505635004320879840358339260797834264972100385692477324858942142372580281421734058008608134075577990829273447077276721423 -ANDDgNXOB/rXwmS4KEjiHj7RCDocVrMv5SU0aw6AJzNTBfseFngqidXx2AJKOEeG7RDDN2gzn4K4qJktF0AIPG2JbELlLUu0MFlpOLxamp586qyp67Cl9OuPq3UZTyQhIsSIE3VQkvxuQkGsaV1owDV3BKIWQbQEqMQI3yT4ELHm 146598844784260148346676185962272439320781765598895126402049215152385925250917998794921584290777625240122575975327405909800121511343265147922400813488099624745229653124857224399973509428158163452130086943873214460600035260925149630502192183407327427517292065083168010281295559088633086659209316582810260124134 -Vprr6oBnWuxIzyTZjuxlKSdZhBc0upeNBHVIlXpQEnN1Q+XURKzp4/6Vg/koITftr3SMSgGpE7LkrERMGFgYaqM5XZ1RXYFKT9dRJnz9VRDITVZtdkDrU04bqo2Ur+jvZhvg/oHBDTgQ4nPLJfHO3+GEmUtck+g/wOVozMMgufY= 60816213163057201559480662231646403262735082707152897397414589876256824040344252799972529759737904461369360580708093117244392116003622336721789703580184437841209963565058475060017600871779929808204093448248984201640754565635410002090180110910120481044515630478472999135146756643143415057403006410330361346550 -do4LGsm0afQLHl9alWF2RVyEKPxLIErsf4pTPgScRE7ZiTSVErbCDeyzd/KHzhBLQs/DhHHcw+OXj541cIRm6jaLVKiT8EwLW/dVG0AkVli83sFh2f56Kk+bCGSKvfGEQcGLY2k7nQ06zoMlYR/xbZCka6Q6kSq4YBDQgigQ1lU= 83252051731120517035090523892596419800592471447735288551342681962005778435125655090199060145942826521644585427683714084736143440310518046334877897672493531918539106001203807757254797471481884534543367685912500572052457610702790097953420236852480969038388056545966568595395722585797418296411673622376893961813 -OL2Qoj4xkqRrQmuuLwrABG3BMMBNGjfBtVBNTdBf7g027Ghkk/z3aK3jKT1EPpdiOdn8zXYBSO1mTRGyK3n7Jo8ICOcnlBOF6cZtDsb9bvSVE26MOD2wzl6irU7vzS+s3vGBkN3AazrxPD4czk3xezA9y13DJVnNzgAgIQHEols= 39844525812817530522650122383059885756573694015271773938493414420875846359054562126060762455794481186614035892021706051863945033061233991184379580556219478200155757966121832613842937722944431875100059046588723473670448006803481527981834627086055642349130254917244469014754132003347635357123155857820000494171 -Ljgn+3Hcg5DOf6usRumk7P+ZrdTBRmo968HdZU1mS7LwLW3Hii2KNkwMV7J77zA0P1pnvhMSEEeh1RbCUjLtSIbt3RIcOEoc+aO0eINF8r99l83xF57CBI3MDA3AAbtaYATy/NUXSC2h4W5kdsQuR88139MFi5y8E5njqxHu3UI= 32456338403763561215581247445990611953939298888251578685087656354454727113846722731945605696397627662593375001096230320486703167389461057538581895745078593206660798580358701927596287363374862536765135996838944212622199018632046955402325290145163082309469649329852148345837780541107029165352782710901375425858 -AMt5/u+ZUNm+Xsucr4RQPUu6ExAOq/Jbcjm/Kb2YIAaEQ1czIL82wsu6YmpHcfMaxLjY+EnaaF+eCWQPeGd1av919+QFbQPeh5DT7ZT9klK7BFyVsN0nEDJQ3AMMJqq6lm4sUeVxDVTmMypYnkzRl7jqzyCRY1MHA+o2LyMECdOg 142886089970163885609957244378225169093559131065687633458877059657380607541767850701139140472705242750285722732461954100519608059127637509286558848391554697942686619832870045594188204522385787253648018847569919409782188708374165437385572046835539379151066214153911415525465041951116179326632238059135825466272 -AMvXeHCaa+zk5VdB27KoS8XpjSUngaw7Gwlq6e2RrkEOxBhU2rGWGJ3fhq1HBNRxDf0quqfYTMd1speisaEr3cIyx9BhYwB6A+Nex/Sf9DSixezhcgEz6c5CfwUYP0QTTOiZDqzz+GcjKikjN7DKJTO0WSXMRG8qX8FBbH0rlc9l 143142496664357119491819741364830737485524654099662921673419335301323845847085335210884201567922636945282124120681371777665458057821603161276185071778040317947168899788341482064834489328957963447735297898161379277478278414388733161844053774747425459239004132791029364174047523473372650441001639174571312926565 -AMxoMXHfE2i4khsAkv/lPtLQhbWUjP3kxYmlJkpacpicBB6z/TmG5zjmTC/sqzBvBn3J4UvMzKYFyk9/l7Wnuc480500a3S4HRVtMtirPueV8v/SPktL67eN2zoj1VZA/Rex0aRGjW2CzEKGwEn3G2bZSgdT8hKv7AypF69ppjz6 143539479941314279463880342636704987025205547180882175105616955926182352311179043850344463145750154442573797875223178075233807385237935671604701513551125937539235111702655902037518920150424691586943553275517626347557879039695678271564616114192941679606063184290901862703975921261779714258077775731727612132602 -ODvOKg7l9RCn5CePG1FfMitkR5l9+7JK67eU+WeA5p1YXCcKS8GbYAKCtXPD2QfxmQcrNYfAc6Yb/kksaq29oW7MzZuTDzK0HXY5xBc/fJzEuvU51gaI0PR3cuU1qRlLqwmIlyt16gto+2E64BgPgIKJcAjx+TfH/EqNeJ77/W4= 39488587053253042573878502921384752550143716864908041972426777545317969264945056510991363961916339225192727727267483337259701961148978214005913510275048195308792987888118270387288989623193626554910652030960235845935461155296845475356011099372367616732243132816329531758943935324760665826550992788664237161838 -AKkznyQtB+PGvbVroM5nUIzhJUjiNj7q4fC9sSFbmDgvehnwPElVlie6PimH2FKonGV4GSaxZ+osil+9omfkb4rO3pq8fy5KcFSw/gs09X/U2eEEcUt/4oSbjs2NaMIxQftM2CauULiwfkWdkMFTBkHnh7Bbyocc8dtmrBDdoI8a 118817437232756222334188081193205110010964766506378146125932730686679941224328135190204402802650523704343176483564284220367074983943319572348376466341132480772885833789613392397284313483009178508647973749522358005819092779831781339778163122774381387989185969990310049504391258988402795259963134610905036263194 -AJfwWA7XnYbTjlJt+9hO/Q/OubHkUkyMYrN6Jd0cN5MG9Rg8W3i8U6oJxT18p4XozkiOgPlF1lE7hIAW9KRKJKGTue+iw0okLq5UNMu2Ha6l5/wzKi0QzRVTBnQm2zjPlQpgUorBBty5mcbt/B/Y3vOE4I3iVXklVtjQ7zIBHaNK 106695084438708194568048926154027115609888551145480521213711726807296356271397749432698558860759334362315257102647885062353922543502466463770991058956633500180245599467233361812610650830611712448187310827443315947425061886163301613989593906515923245020641415290300558869209909418659128196109640872398602216266 -aCXItk5XhuNrbrqJr1Qm04U4y4AzSKDMms11PgVcdf5fCGdizibh6/oZqx5OitM26nRz2vob8F+ZIP0CIyIJU0T1M50dVTbbpwuVNdv/XI6gHekQt0d2g34x1TQJIcsT1VWwGWTPNMtht1hezBAYxwv105AGKnqdLiz04YAdEk0= 73134927546833985031652237686088635686032103401394612286045377544136784429757461671691980910279873140130943470029643791712859175007885735170485461366406852784845528918253441791024065848540598601036357817496637108534035807393364939272891745520961269029038360205258229770737579266643408540634722493263322616397 -APNeoaWlyNa554OtHP8F7GAY5V9F7LMoF2ssg5wBmsgGFktrRH1C4FdyD0COrzIb0Vcko1/HiTnA9JXlfGKc3gTHEnO0gxBSDjK41L+EIgUfR0EhAD9iftTaCoBM7qZN3R1MYrSz3sevQZNMFOOnRrzwWEXnJaPKAZXvsqPzOIF9 170899982929163229592439208307232242235219591108657660041403142612622997092685093132858257827585941687488772925553142105567685213341947938835403410054637382864108739466539574004149772568683507025358331323655651148107044968424043673850583150424463706583215452211942132017052425497789362680979074312857823248765 -ALhwBfBYpOk1pfJcNut0C2fEAd4hhYU03/ZQBqVe/7MgpEDjro7oMvSdba5kjH/VBssmZVqpvuZ5lG+vI9lXLukhwRKJg7m67HG8lZXvjDmjU/PCjxBPNt5r8/DziETYmMa+fhaMTw4hedZcwDe37t1VPIflvM94sBKu6be9yJAn 129516480651398210587505113546142851617282590236388547627336279692965778911450075230961856270046942312918567973875005814982283590898552829322178788678196583244198944578081007477482775130405341039067711963061287597331433268366003672643052056973656674139309732186091974604170508497340243515339072325943686631463 -c9vpoiZvtnj71b8XguD67WayOF57QgOX4V4L++nG2u/RY9VT2+0tJ/C4NIawVa7ScQZAPVLuhV4J50HJX7FZgtY5n+lwMzNo0av7i0IqTS+1BBO8eNJy2wkCbWWBxNybuNnF6OK7eXdPb2Mmwm2OmhN2/j7HAr0cD7rK/Hnif7I= 81358980280155473712258342299472964374474635149963153129588784719499494479288254287754874893180126149146558961101860327826747785201363745989346818037655063262173536227595206355647880155693272153902647256175878517626925488264893732295267833614283963802283320574654949992393798458265266551024756663538388467634 -APArEXNLzDydcHrieLDReJryWxFzcsN1dxjpJIVGeJp6itsJOrUtnmXVnETtaZhWsmN3/Zh0R7TgJ253f7PZ/Z2xCEdqF0hs2MmnERSywdWZQ0a0McbDUUaDjBNYFht1wvS6djbI1b8RfayrnEZ0miYdzrrP1ntU+5cM1QBAvj6T 168651870043094856205824264282870999215855903395882323164614939540734011037112413507417141209480771157672307388419164831992909066097194364645695794831939514470650008210390333649278806163193463937050083854756730458780288720541495880958909249273048328511615821480782977316719631334570687241232556472064072892051 -RhGyx6xibf0OvY1XjnmX5na3G7emG8PWbvEa1kIjR6pK6K1MrMZnxFefXpHWInFS7ADESNI9LHjZB8VW5QrjRVPMksgdEAlkhY7MyQxaclUlShFl2AfKYBfIIro+vg7mUMzMctD+07BLk+jejRHtPVIxHmNnZrZYds80ve5z3Xw= 49204219353786910100605282012781696579642953908541693903348594981245301165936599174304121350092894937817100350990938057159324959104937469442065996667276651025661016077514839755853073999975805394464570132481314896694678249282338429544941873047382467276103868995474424700207571657816852575364781281563515280764 -AKbFfU3GL6NILVyONPVD/X0tffk5HS//7FBp7n6JKMXu3VXvWnfTl32R0WyVHk2yP0iIyi6SUusSicOH9ncO8KJHmaoMGN9Fn+Zq94FTFqZne5NxHmCtwRAbFNDVGg4FeemGXEe1S5Kk1VcvWqnp+QgY0uwa7RtT8C7/T+1pZlwq 117110890075563714812929271250884717870581483065920538069845585667296154465072587148155060755111295509684258790280104272121160614620669593483929827848744548171793187278583947500205314283462739235860439216105116687015890394925743036369717346234391524403038196640934551590543386844279091801685432977718405127210 -AJ0xZ9dfRc6P4W31bMHBymgOq+38ETEIMvMtr+wB5WTcsquZY1IUB4IVkrHaOo3W2SIr479IfJOOQhmvyRS4iB05yDI88Z/fJfXarkH53gDivECuo+5+JmV7e0S6gCvOuVamwoQjlK3G32bCV2946ry4EyIsVZ6Alk9xk7X5HfGU 110384671994603894282707302829898242894456931176497230904862171369974466400767175784681299142670706023468915238955836087425993929524341269289746060546848852729416925808186253355106621584826213979718185296723694190658548757311188764342751280681935289121682174507629679900374674992438818324999211250580434317716 -fjzmb1D+YBU5Wn1GlwhxjiJS07k+fXxjeNRbOv5SjktzxOXmautO8xZ5ACOlYrTt5G2gzW2PU6sYNfByQ0xoUSyutOuQlD2r+8MnDrxCo6RxT3P0dUSX7q0IVj+oLK4GPbscnKLfe6KqUcYLMgKnDYnc+ztFD+csL6BQnM9WMLk= 88647261832601702291191332432291274285041869480562430895152086741320122435409959711452438332192792226899741738806447713240934608106883094466050154088410020909933636902495700779087737304255058561688767369900548260278700135161077055869478387490726087630962098228537973426295306997128615315548440548541717688505 -YDg99aHkQSh9RjytWknbXzcgLD8MrWUEHF46yQLHYANKXaQYyf3yGM9TYPCDUqWbOapqQe+XfOCoACLyRg7vVDsnOPRDI9ZFUgCQBNG06ZOxzktEhnNJoRC99da8jyodFqqk2f9UD1lVa8tsQdatjUDocwgJaDAOpYEyGnUlbXo= 67567767932654827067250684965667741848878457020992905661955722020937161710030993261011062929936964216357930453809610708591260182295097124272956485574313839759737390934220465669626974544253750900911093325004172643146669082793591441922014060981070503803266774197958528843445580649512373693546027107823355522426 -ANdsfO+cNtWsbT/QJHGkYAL2WCHWVPrX6oEz78pO8lUwiigVEow5roLI5Tm7GP7XffjF95z5WDxzpoam+Bfp4za75D6ZEHQmuFnpWQAmNLUHdKUE6UcsWN1rbV1uY+x+Nr5Vni/M7PfQi1yRTTJTYav40tFPb9rY48FsUotivoxd 151275723772668372472508916060743043308364940375633847663054782759325087560768667906829087958412643723335046123025802453213225972572697773468957759328009026531148112732519692142632237595562259864125679649273054426879080697360204352423668940795473103047320116317252295126635024518179060076282921965794883439709 -D2Z8YA0G/vzEVVQ6itLPUC92r9n9FKRpf6lDPWIgpZOOfIkukPp7zzTlo9Ej5IsBrZBbtGz/eYmlHeZ8Y9pQj8HFW24HeKYqjmR0ujbNxI0QgoE+VUwPVg0HhoQsOGmq47zpXpkDwpOAZbMh/t1Bafq6r2zM0qmiwOacJ8KFUas= 10814483230552506566705634583020057064935800294861277580077052473134972003523900930560478187758928889017740705417070994563709463926267126567504805864719383185267204810142444719634360655595490833208838383875687102074846353850310954150927702228780599083427768247170427544730791038729428517279760042619935478187 -XoZpSMHqlOyPYJS7dWSRNDJHCkjbo6+DECzu0FpB9O8bftcxan/06Twbo5d1lEqPlLx3w0XeWtrmCSCaeVcXVtlY3QuPjdKPv8LBnnhslPOVcbGyflaTPXU+ITWE6rwnIF+yWQl3NIwCV4EBtCT+3U//Dt/Ebif9gzfKpKltD6U= 66377743237695515693282032069691369056215169443985727092982918806809030742478033317158686828712146024066618073633406428345129492010236994055590530566431286733776441810601990431112187030942086686719669823512292071202675269428014136307286941704297995292544712278047959299939833088742083527714893795660235870117 -QUbbkyJQ0Nru9c/nPbphM6VxHp5DWlai6407KIDbTGvUReVYI7de1gO/BFphL9GA7gDareYoMuej3/SVp8lEujXywtXzjiI+j2TzR3YYiMBAMhsJO1wU9pxy69Cj5xeFFlrOycjE9sPS9nrqnEEEFNPiK/GDDTHj0KuNbWSCLrI= 45838919357034925862751142472777409057791233610959872523563363744902783251621354580995921495295078179996083468819097423327554678806691589090814275138081407920379810144694354354954459732280968086760894209634364189264517251735804373673532012530665557440070501687207620525228416650281363557992436992284712644274 -F+uI7ARCeAlnPLO1YR7RJj8LyhtE/EJMcY45lsNMff0YeENe8KOITZVxNA55FcxDYpg9sKi1UV3/ASqkqpH8MOxWpBdT2UwSX3oBkp6ETfJKqiag0C4MS8cQVsfcKF39BJ6KUE7X6KUEj11j2YIIRREmLPyZ0LatG7dN7Rmv2iI= 16797235966984072293396362937533957334369977688369659112225970370748312376722010874726300554329794854683394163379447263409228872034356195791733533528404245739693397078461712458035888813157166614479153484688995068722288153129390850561042173295997770817893349738328312152341860704179681230323810266038959856162 -ALkEoXznA7BJlBIfA3Avl9kygQcxexEMApwduVRiXeYG0uEXMQU4rgMJBlPqs+ly8LTIcLFaLnJAG2KFQn2GXz2TNa7w4xkegkrslIJEtBWX/lc7VzRtcLbhaXEs0Ci1ValnW9Up7dYOj3Qw9eNo/9M9b1fD9TI+0QXFtp1ge728 129924120553920201168632484268654219915712271781591182777925696006023100660478316445751842982460082888615429513674356810187315558964251402722465707617058251479494744427428152566665405423424700027316505872162698141109433045594670140335040479559124757490095995568556894332243767736124299898808796118800328801724 -Ki3FNTEE870E9GaNtbT418CLSmf++s6Di3hzAy8NgiDOFo+uuicJa54V3JNRxOBc99sl/chfZuaBQt14BFOQ0i+9rm2KD82okNABd+SNfXOb0Ow2taZX8CpkVJYDyphFPyHbPIKmzwMShNx9X2z9w4++tJgzBzGcFTPv1nhAlxc= 29618953883711174042338818332957726953262658484143534778541769862244883781157097499904047532839425875312731531093860721544220959674634750905085721866390609141599426547378130082409488797303960018348798930232014390380383063108812922828160584483043190739354817699497573863286563890071313017508437166939160221463 -AJq8tcSnAq6M32ViO4hVGiHY7Tb08cLVyxpl/v0Y5adYblvjrbsFcCmsNDi5PnBOBl5awR7KZdQ1xgq6jIs+SQbccEMvJvGUZW5MgcHrXBj9XVd+8oB0z0eahqXpgYBqLDeHLU6238xR3dJYFf+Xrcrzjg8swx66OmQKkAQVJtdq 108660120968150664552423780971948386965268856900017812123107864829782135741514930439461240950044759098603910762272795612101834680870627850178371693837566833495418727543557712057554231215186486008080050486837716071537742708913279026303380104388546316647349432118287628353129105425052237438199445863950767806314 -AI3mfrgcRwtE3mA12gSoQV1xyIGy/YA4pCCvja4mTjvzQOAfiZL0efadxZH5awohCC1SpZDCFsE9yYp4LugHKu/A8zMcp4k5ena8sTPDkSod1yucjybgmVJ5h17Pru28AzHQ/YUmCnojQv55aV2+AUhxzIfojY+NT2PKRqr+vuf+ 99645829268436288676280252226747461064597487404802430565833102291706103139410465131373666856042539909746769688396958963177805479987372681967013633920910376342526433530508868114301205524789149997372160919406352823342811006288909548557622230243808373083272214426118230701324879006645047374853535922112549545982 -TmXQ+D8XFKSclXwnTIH8d+sb1IV0gfm7GagJahaFL6A9rvYaZ0NTizkG5DQ0RmXyo0wPmLork/296whsdNdUxVAwnGFlWWvMV0ftR1fOvN9KoT0WtVZ4Rmu6Fuc7q1PskAZzIp7MkOAxILO4iX5dNuVC+GLZYIbpTel3Ga8fXuU= 55052751096768041533898435453266875315629605001878362193939750978427494147944918632414581744895066623527980497732722163665712245580312596487741856071020477624754815927936394948233480228964159047139170955663289543349257377302556035170334384320502468579367401821986660515827461352578142560630318492817238744805 -EF6KIBWQiQoHOnBdJs1p+WIcAv9ILt0cnQVo+o/2niOtI0C+eFBSiNgeddhotkQFgHvGUjq8BPYgtLC8A5IFKGzXu4SYj5ziagka0hqfhVs9zVHKNx2NUoMhPDG5R7+giwEGGPOayGHVNbsBf1FBYG91+mwy8hnNbhcHSnvLGk4= 11494909948912248031301686864833544028186348338729984264372557659364976118965740281229664413031002362633393381744365783802034700038490736736266032000546393704814403638058993380993275865674190555703046732456017652317200288968188655019374159412919163798248766655991273308390043613040731449231289437754791500366 -AL7wCh8tkFe07qChFAzRkrnNehvda/Teroj65X1Bmcr14+/zeJlZDObYRYBOm8YYSYNgJekcL3o9lLFE34sCMbSJgm4dGwpEVexiLVi+zc8ndnqBDSAnRqtC+3jbInm/v8l6cUvuzrUNtzXIQ/H4FrmPMiVy0EMerkMtkfw5GBsd 134080980697158076909534078193319899756347955848461100874771253577754225619652121295523443912922220564492468474647193062555347746840044705102003079330399499915801536721237211615317000955332058281901995149084303143543150689010335818219129745452688372571010816270728441637278434982752674030696337642893239393053 -APunLhlblRi3bbRBwSV8dsw8h5SvT8ncAmXPnca+e1dLzrQZzL7P2OhFope0mW1MCDl2kJPiGTdK3SiYJVsAFeR3r/0z96g3oq+8uS66T6VaJym0QToMsqQF4/fUMaTo9HsukyPyOgjVIU+6TiFd3SxQKIu1/GpQWVQIP2pkHFKM 176716779397275986910036615967409090183531310366246043951791503601618945774743601662530806467045971394247287367421508126613573039423674729894091424105133906122821596079925540513892022311039293333114333317886304014722168786051080135090242879622144693440448171583324154550086458411590240882982297314605229953676 -MM6B5AgdJKe5OLlPzcXwi9WhqQjx5KsnBYxxa3kWdGNTdk/IN6TVd4Ptn8lWkLm78mw3DXP4Ol1sQbIfkHRoKFUN6TaWg5aDCJBDXyHSTZI2FDc1di0Te1SwziYn0sIOe+R+rfuLuHlcT1xaZBgL6+dDLAZaZza36UEjn5i/pTs= 34273208848307582992498656582721015257885595139328466874135636009184357438445251703533153492315835793684794951576799764181908090765379592683793969576893243386892292517067596035059342970830813419330530731370385186653239446376170533147020072285887964430731437765184844167400169982662183791828762458682426369339 -AJK1dx77ZA4F0sYCgRL1LKSTvjGTKBHd4QBeVnE6FKJxIow82puqtsVZ7TBxbECex+LkLQPrEbuQaVr3giUDjg0aJCE0D9ZVXCUS06qulqcCCdWgGFHXDOQzTWDn6TlJCGxtTEMbMxSlUq1q0iKZ19kwMHiT3GydBn8/G7tIYd23 103022457217861194294329435482792508957642944252832971366936865663608381648431732294396977429863681671686490913575377744795372643599438468695483808375208871881849232129651519218503507811863794426234594709451104684234156597418383183271923307418704786548452806494411689822939919114966188329657999811363991575991 -fPZNsqUYBbVGA2FAiglnByxGJOZkVSpj8Y4QNW5wq6o/1e/PRwp0TLYJXIoCJRs82pAj0QDpQbHl5lCZmNxEIQP8o8xI//HCPxPIdgBJmSfm3VGetrOpqEGU0KJJqK4IsjoVpAfPFMUMOpGNz9CSvCHGk1AKrtYvrTJEKmETuig= 87751387019308584846595931543798879607048239290774788042055795835726250309378365187899578817976976035304304847968410200168743967600896348021636654074952051821111673620467434295067182213181329543946368332581250062140819766061014427755090798550122401239987766844126425179573454145697756278292448630509686471208 -EmT6DUd0bxcdprYhAnycQaxm89kltJOlIOGFFRmEK90H3RhzBGr5PRVTJVqemFVpVliO1gy1nPHgqDGVNIE1GXhrhyFJU6m+HJeNcduippRe38xPCiuraRkXao79X7WAiVYUq6RIH+UIRnfTvHBgzTwjrOvKJ5853hYmGaanjh0= 12917015385266582065020051081997430892582163827812227349569911846746592973268746845211126663077128575098045461893559476227689488349263954564361736197688317585888118974603264677576027836032271531903881104937422976121352854003385726888601980526287956222142458858211589791399646989299770657341412683499692330525 -APtOYyWzdY1A/YU0SGrtjPdMZA5E50Y3hJVXppwuuSk04TjXzcbu2Sqp7sMnKYbToRW4nB5p2UnaLPhTRy0yszOd1auLngW+0ttCybD6nTcVoP65gYOwXGfSEQysqKLb1OfV8kYq5Ba92Efn+CcWWWuS0wEr97W5M/Hccx9bGu0r 176473215292413922394356058789571494026727424839036665031567966488209592078148711908841964690807374236235612412767651029865069639786447019874344449598703213025389428836803984245755885691094364960118900160737925054803955567361126391353868279642836569627177281508980029006921064654964339077608785831304875404587 -Vs6bjpYfFA1R/QTeCfhMuZLZ+Zxo6wxq1jFZpi5SBR1LaUwAtOAj38OJC8L7zmxSOj/RGEmJHkulI3E1MH7P7xlWbY468/azfot5fX9BgHrtptV6Q0dkBUg7H91+tcxdbm4/V0HGQGa2rZp+XK1rO+U/d0ki6iNbsCsCR+OeyvI= 60957991334776853645581868230398759578123373154273044785333939425321390401088800849629483265841435899835570419798325123273632247193463641611211088549152950252041797959644227170492417662363676228611376046334386877555777556575818860902071813120592757466883038430756577949025778080997296219236534786815367760626 -GiauT9A+wmwJsFbS2OPIM6ultIbU+kT2NgACn1jFAy+vNBahdfHMCH0jJdCs5TbmKTCeiEf3ITc5TV1OSvIejJ0GRkTf80nY47TAhiP1aehZvMAv59NQHHTDUE1U4TPVYKIyFpm1V1A+JBHKJzuGrB4lvqB2ed7k4m/ZD5lFLMM= 18363925023885496669420377869542744504974590667921570026763131637088916425434675950812384919000566852243714758512996458727914094904422651029609645299422563453163291342992902510788457007623888307499601267675322986672697397389663297565071582648674012080122614260400848960757021864980761735684874056409664531651 -AL/9KOZLtZu4+ZQYQsmOgbST8F4RV4N/Z+l8qsbCFlHdXHqTTkcN0chsccE/3KkVTZsAnAyJqogbAvB/RZqttaK5a8iKlOEoerUS92FVQw/42WhsVaFggR9cHVuvCD6QqclZjSBQKQzUMy0YWPWlycAZDIv96tooA+V+Fk0jbcFs 134819194171226950171930028888667967094069342154233489571728632904658607624703819928943642011918061760802468868660586005724399808048609316802502143143910585363214684061242274402109137825176291816945489430125510625857564490981683683589784133305376252294774711594646923226452625156299996630452243345104727556460 -AK5x2N/4+PKlsW/fNrw76CnE+nS76Rd7Ugo3IKhMTB/IuCc5xG4MQHo5MlWE0oVkZ+Gs4CxUpvD/WCCjHHFlSxKG4mC6ehz3NVLglBt+f1RWfPkF28JPd0UaIOG3um8kG4J3JDN48PXOPP86A0H8ZYbE5+ImmXsGAcwvScUQRInU 122499245103202714319465533564374494931278163571999934877854825659720649344163774228004853964635693562785966889622928722984134944784141208867445419597834322541679973956606275877526560988151196822256754309120410807075405427166696093800381410682490767468563176131997424692783482903880902119461752084196789357012 -ALZ12i0hqFhwRAikcoahYzH/BUolhgZ9Jz6adLvvTO4wk6LLOpNC/zCz+LjM7HazZomT1SqeYJ2X+WeGFLADHuWo+Gp/I3S0UEneYHKJxoU7OoOtE0mB0BCncLckHao/LmbpnQpS+Lx5bRsr0yE6oWNea6gbyRm/R0to74MI3/KK 128128022342420083856194424802390993133863171077961467523372211039771843125192435716337829530528063182315478279257832480290950255315151577221042903861075751839976362752440630888566422581799720709574650482021111126414843635330535518992034746102956214991673417580508389225948159518319625680855827280146399752842 -APXxvLifWgehdwdTRAJP5KrchRzgbUsyMWKcPGm2ZkwGDJjoTl2LIOOGVFiL4CyPBxahkEHf0nMxBN5oNGX/Y4W4PuOAC8gMgHzdLkPWkpnTcyoe5DD+fQsqNuKVw9nvyB15fx8k0d6b056nfFjnnRqgybby7MSllAWSKRYRdxVm 172707950911363219032118650562553641123743396229371815589867086054370029540557395298194067635069298952836929253340374819975848769009260895874615676938511747311585257140973518651959463416682165208985512233703837931718385346209362040743041262031997793519095342415901373534535662377972036003546589624834285049190 -O+9ohtZ9SzGLJoZM8IRQAjhc/GPt2X5G+M22ZidYjx9WgOTrZDXorSyxLuHxay6djsJSgjxYMj8MuanYSn/DzPWBB1Gn4cDmIsfeYuzO+vUJ4l6d0nIvBg9Iqs61/PGFd46YxhnDiVQ9HEznyTjzESnNqc0+/OkQVJcwNHAcZBg= 42087920806448980363073662127262313840530298932643042322138035915324224188032438119079107631420338701086802583985117830416851550991102672642532160807467909040086448764318690465254898516502941122327185894900817634110254371864896139724173087625913998657136384357741816102965779105122269429701537815263708996632 -VJOZmvqrqsIUTQSSJpZPhbQIYN2tsfBhAciWnfAYpwjK9/ts7OP4Qgdp6T/V2EsSRPnfZ0VKdLg1CnEWDhfcODo+/BZcUrJ0AviFAEtdeUhoMSWXtjel9Ln2guHY4s33z2cN70+e8gfjes65lCzrxUIXEF4nKxzKBnScoooQP5k= 59391682001673484862915842850714742391303140646889359425353339320546979084250010101273851580028171449840778038774656177449549941659895629203970455580974953864068394275066532699748911169800076515776388213090834432354601344176559839798153004796057709798368011673585434643656820656931921831615507416411999846297 -FRyJCOgPziO6RDHX1JgYGZRcSAuoQFIZM4niD/B0twK3l+TRpmVigKZAJnZZFtmX+0JQkDwQn3lcBGQIL6mgy+j0hD58U2/Wd6xebuHSzf4OHVGo1cYoqZLplszA+hVCoDVTHi2YAZ+GtfQEggumcNVxqfEZd6D9Nu//hm0t21M= 14824975573460749317081504809641216868382341402512168178334301409725840669112911061147252565570697788806398498723577368905065980113760265945344671897779830912242224090954834750057278285419880820811348943398148063418809729356397202526234113316098584002071850758705282845646489058224513019380757604894853946195 -dUk5LyS7mduFJlvh5o8R73kJIeeTh0Zli/y3XjtIXfCaNRf+wDlD/pX91JEwsQ5Mvj8yq/Uq13QyWhoNwsPpXVcJtJ+02wtIn5darsBDfzcD/LbWhl7zTRUeMjZ72gAWi1djx94SWjrZJS2oWZU92Og1yOyKRG+ua0AhHfYYh6g= 82361050315899968537319599868832189063658136463903643442673674137187842597528653416212822014359684261704550279153006971937114135373937934986951573613797195556144113400128502946618028800530164890707031379614952207482505803377774320259789692177752930767589642007257364960987343146063216186985472686575891023784 -AI6rejwEznR35rIPuIz0CP2aWyhRUR3unJ90YfxyuVYxrqOJQGSDTSf6SGDDw5MqpZXa9pWuwpyrb6smOq4ZtC3Er7lipJfXDjhy+0k1qcfMjmqbATUscwXGpgW+MO71cttccEz6vhbjndi8gvG5M/vfL2l1jA8nXuBd4e254dbz 100186164434910864539376019601151338080943067893748898987236087770762310617199833479771711726248130012472861788210345311298499515751355424063761182369333224929721733015910055321263016834247318907562652286587380604998130368845939290804442878127169587599285040969551065995197981341260363722618429042861484922611 -AJ5vLZX0fSs8dUSBqd5hki48T9cYuR0atxR+qv7cRu9nD1vP8uNVR8dLitg3XH0RARt3ZmOgi/AuggZt6tTxuIBg+9JhBY9WW+BLL5CnYWHC3AKMi7MQBWciLtmBpyF152bDaEcV1PXxtml2KxX0Ba0C+hGVDmJSdi8Kjd4AkfU6 111256341508463539324514225759801553679558662737345522765042612717818066374840372549356543720386819501973783940451033901079765311790026584654529398345993992144903839534037331533660672892487693477412528974248713261092693018326068480417183236210881306241164169849090833681510163753605662526243408192127670285626 -ZhXtSzn1GiFfHHnSKUYZiTcEWqlI8owyCKFjCQ+VEvkdk50m8uN7RCQ6ZhI545tN7Uy0WdLstJhgJETBYLHHIoWsJn07mgPxuyO0XsqNroICMQEOO/YWQFk1c0VqZifcohQAwJj7fONzM7hTcA22/7gVigJ3iLq178jZOJsEPQs= 71686982768953132894579286530164112027530221141251507987469672039995314435159469907420372652392376452531392493658576814100773556880394271726970628960571077839124343525055625420896355363707908511865700866168843075071778015504724409171911254647909938237551680861008772396291072284353858575645679153885560978699 -Vc8Cw5m5yI+bJ5sUJYm/F2wyZ5x3D4ydyL0uU/3eVF2ZJu55OOlC9pUyyv7WGExClHvWpR9mhMnsqCLyseLfM2Q/YXJ7cjGPKp2xd+fvwHa4hRi1FdOxs96rJnb+HUt9hTwQByXgzpnUfs7AqrqaNf4WSlBNMu0IOOqDdB4iVHU= 60256873326783629723455608618518793848697944184579877638436234491615392142659293975260290798403892159720925893207048153291000664050780029732557737984085196691225472664027706406879051455184548871511448456651238810812870905640934953489289909009741493031472382758586341375517766302753448531830002512912250459253 -QmeUn6cbpE8YrDfMETz/+KVFaK+d4NHHzcdj/MnjcmqQSLpP/XwCW/aeudlN3SfKd6rNo1XZefunZO/ek+PHEIy899WzjiJaajhf2X05fl9WuPEaMES3Yrr+ClogFNQ+9jL8+7L+J8lDuqQzvchT0U0RPay5HSNZw+ZouVCiQ18= 46630904037845609335515965570673490721137364238213103678233212262384415738654627185220187275286458759154841820256007930773120637898228224906635911124921895934056288121005350040349882413280772888907627838315559544636626856478316691755270725623680935763476199888127096014398699432042227882284223578563208692575 -ALUBYIShA4w5kRUa6iNF8S33DqaprdOWjVBnO+j9CCGtUh+NNwfpKR8AKf536MtuFFtwaQvRIlkLpaTYXuRxzyU/YG2+UfRQF3pEmXQhcMxJqFzqZ5nWCIWlJ/KtYS4lcC/B7hD2UGAktnIdjVUTSxX60VzA+zxeunV2iBZXQlEs 127106299687401374061881872616647348819431126560557369258073443762502337592227172639640997680536372567116568811258505773087926491911004324918919511363985868314578663758269650473780772688462266790559846182685481907703974916356209771821075179827563487466641669110315430790405454641953880582274165368514679034156 -ANyAdMnVCVjmUZGiVdyvGE5mUQpKoJOJINqMAfzVUGvvxXFmGdoAx+xsDRNAP4KoijpXk6E3yPBPBZEWyhiHnyjEkktK/gX6gnb745afS0QIlsjhKCk/W/BHXkzC862Llnc1ZGAIsERnGceEoZHdICfDUh/7nMFp5WuSMzPB7nEO 154841617115465511611746667401422322067517612306328612547616471923266281876818466022676728696273611923942543658633762267658490816264271663863494188027433799849037906883352478212451733963905925106470599843045599411842850386623187980045961158399934160107237440980574028985561404965317132715808604373199725949198 -AJ4nfhDe+HojR2YrprDHW9FVUxsZvoIekwlNL2iKFRFcTB9IcEdh6QnGcaRinev7yEYUsL6saSxUj39uWlqo8udJFdszuuQUmnloIi34L5uj0m1OpLy2dawpFQr8pqyA7go4ugMMj6XCtiVnISUcK8wjHgY3Jed/EKK8k5ce0Jxt 111059703393618496515021583605572584329116596402705082562306930876194742195701060137568030171429700588269665205795898835699633817098262654446852249498668467827435829513531633390969638488553144849154126899372953755511962841193763362947708260103832329116485114451074371844037650417731807385491783373627950406765 -AL+heSTflb2MkRYFTKghfzqlVQ1oE5vcx0eCIsy9NJ2NGFXCRRvoGDVoB8UEsUWIRnaA+MIpwDKGpbOS8kRQrvBvPe/xM/t3jrGkaS6pN064+bCBx8Y/Jq31ZXNG8oUol+y1Eo6fkUKNl4EOetmZWK8VmhVwol5YngDffj4Q8ned 134567692290185631768518572983694048149859804864902017394351513816079806629664302312927579302025923096596995134868068794900003728293470554490807959649153000914807604036531509869958441069678002226922395630284261949256022972967357884468325217602330254290548618134453007903724438628204981673400911693835033278365 -AI272d2sbYIi637kHZC+6lievgcDvT5VKaCnus3fHwm2vfao7oYu31P4st9DlqPWJ635X6QtLkU5HgvVSy66MDj2fcOfwVL09ffkZYnoGNdhMADVgOq62Ro5cCpOdw8Ko0cCyVpVIaSysPuqY7kiClf9GTdyZz/uYHDgwWeNrc4R 99528854246023003959943182132914587584844397870416002887630245681136432049666385367430032197518895755482367603560037194955739661569172773017279832774100155646116233705958563163070414171045438199561777058338188494271322834524386565519620661180246416329082614115142485663975718653564590519408413408765689056785 -AN9S8vPzo4SkyKsk07nfyD0um1riJzRqqWF9KCL+kWMHajurgPACikYzu61tL7l1mNEaIU16Ndz541o+y76DgsTLYszu4KXUOEt1Gu3eHy05Fq18zCDlNesSVjkZjPmuJr2ku+p0cP0TLLMn7/KuVOm4GlEVc6OvBNZuEzRriSYZ 156823459768092337875922818543729136404805918580285507923139232733465414368775678369646914249412830351437211620056021568154043505276475345347569200977945836210758870414054407438380975491139001471954448623922841964684437333066353208837709613982022690623722155151315252634380695513434502419141555410441456920089 -AMc5H8kywLgiT4zz5xgoI90jejsHorbqUGtBeX9wke7zyvEKyWxRKScZwzRbinjDZzN48eg/30qTZOV2Rw97JFg+EA63iZ0vqfF8jErIt3hODniKX8zayCuNmiSb5kiZL0UDU1SNh8ER4m6o5vshBKkmqs0PeozfCGQtR3bZXlx4 139899247405256530335276706333424670310599977544642091674186635734421385499036688803073040921114325725234673132788498809189814711681909865484671959982394306416477300458309408833281654917008031099378445580498219376391819745965887864647387211647794422908411100892195529730435423964537342228510107659017578765432 -AKv+3H/TruTX3wdMWnLzD05em8u/QMl6lCHT4VkK+uZwBXoLeji54Tcs/hZIhj0Bdj0URrRt+7JdGSTy4Sr986AtVFxBJZA3lT+JT4JSrq3oY1Tv+tX/yg8ZodQmbpQyyfaFg3BgeHNmsUoCrdqhj4IwBqEXoOBRIXnzaTuqqSEw 120779384043726135670909127168686589868907326577918074234323699599475436892003731971700278391108690400460261929381703781833059801757700386671579819341589048987186473249926590758009001670959004477454905417357202448886738669226760846888369186457452643053236389556969071303251275912453385963613554945645058007344 -ANXIB+HxOyJd3YYsscMpqZpi/eYjZi5q6A0MohU4BiWEJK/E4uIObLJDH5yd4ng+hn7UMhc+R/AxG88hIdOc5NyG/QyFs95ZLUC26F9rkRifu2CBkgqR5EQi2cgwC8jGxQOkC62YND6cAn/ILsKTYaH0iavtO9Tz04vQp9Ypc82H 150122383481070201614242107655752525590609186454390549085509458064289390813495886095936526832230958746095739308601699615024239939948911472291507190108935262129646691795733786714291498653838550751365834947465294261687773081563139416397262227609481906371677917295227469553787085145970923979142676551778927103367 -ZQLFoW+dJ7vrHdMlcLRGKY6T6PZKnE2L3NjXymS/55my2CDBLdDf3oXwLlRjVt9KnEiXyQzLhyY2PrFA4k3N/3P5lVDLHero5c36TMshbHgbIKRGN2CGWPEFeQ4j040IwVbQCPJeuF3jL5ikCxWZFXfeEnTL6TqumLfD9yLQfKA= 70932215714423143395949105745758445705072524008235214324766464113352968998429901322485575506330607802260244612268338586532462314021433435523464635419846126736185176246740838082062856583684393425704173881940108783636582561707441482446854068022535943408999200681879161519209676205165680598258447492092651404448 -LzzvPw0FdtM2G/RRiqoajJiIH+Lw3jpL4H+08yOpp1bNITR2Aq0beu2nP0H4o2Z1/FNr2hzuGakkAhVbmmRXc8keoOkeaAQAP/8OYxHpjrqou3WPWaKx+vUCTSqVYYf8gnVKpAAC2cD+3lW+/ZJ538o+c0ovbUKNu1u1j1OBtA0= 33171669664542509840621265032202455391098253465550501094201777336478104142847268103467889435377685359857979277521589539506627375165485879405453566052091202280471235979376217319335800766353336252760793484157724210008639813552207624049019149744883918494762511376489708611103181576211531366514802868659603747853 -APrGj1lIIlxA57DNh+bTEAFbJK2Y2P3MxLShb4fPx2aY6j88k3umoe07ISQLf9PzNPeml4/0I3w0KNd2x4s9KHbj7NsIT64lhO6eQSEteqZXZGXUYUyNzhrTbAjt+Q9LVKItQhsTkTW2HTQ5RQZfGrkL118b/I18J4P+T8CGZdDz 176100632478477421621142147788721746818712752858710594712903769452749028606541677227413333567013253138397373757811889654342173021761934591400685421771460440213093509170325205622261487145789848227404883040799927313402244625239515162996390018403365063394514244196976794479529075569412676472840544017222373593331 -Fvcl/LemWk29I5LCjU1QedTjGlkvFF/kZXNkRJv+vNZ7qgq6pX8WB9yVkk6AoclDYAhCRfKTKuEpR23iafVuHpprPfNXcqBH8n01kq3U27xqIy2hS+D6BRBK67PQaekq31EB0aOcEb/DuNaXakS9+mtTMx6BKt+WoEY+NkzHK6c= 16126868736093163702771491576570380743773057522016869811780571865928979861357811080042796140032050364543242385458140594532945509386155523162799601656485075247603490060565663264947465987286983338572455184901756399862440455644131755848583379822279676555143231305246033911608913609591095831135803702269767527335 -AKW8tvaB8YZ7J5W2lmquBniJzUhRfqFdPZPqvBoMzR4cRh1CMNdSFsYsnsaF3KolNzogdsxFpHAaEMG6zSvpNJAoi4nixCqb5SETXrSLASXvNjI9MvCoE2JCRq7kMbjPL7cem+mBPWZITGUI6KVlJPLxQngHYSFxukqlx7jznwJH 116384596458828069344020651216200368975621068920641012055593076864629080375946542748377736186556382088448816531408136815533164209947323588157210859294774679831647934533061547276394884474877353537242203645373945111105805934070657589374883764420038511061919092743520704686962593876316976299391579463759429567047 -D5N2P4FrqDf7/2Z2BJsqah4SjUtolic/yNqdNzvNEogDKZKAJyGq4zhnHvkYXkEm2ueU/FDPJRqisszG0oULdU6c7p8acirEwsGLVh4RamnFRgmQSK1vbiYB3bR+P+iFX/bZ+TWjN2Y3YMa5UB//I6Zb5kEIjmTpjY2LEPI1e6s= 10937855369372570149476727082965401421189236366492771695094788039313362971972373068736123833330006002198346944149230147444718818161877123407713821100752433128205189334393732633989950841577315682292180735057952587083688644195300641998709155269462601925653013312848413290208844194513502358901613104779186502571 -V/A1ktS0xrcwlI8xrYqvlLCFYrdVp8tEzZaZ9iNNpPH/pzVsA0WbnnUeHbdilkje+4OdoX9C4U2xaOuWOfvqLR0c7GeCkSffCqyf4ZsBmjy/BQL6rCpxMF0gIHXO5O8aJ1h17hy9LTuNzWm4zVh4pNFuHC9L6nAcf92udMiIQzk= 61752386563628388546439207444896778638632243226541303179646524864765343154194512297447627825411023405896612559648434895675553567405277169056807223959390559391191382555701580549902639604424290133917402316755076644943742815711432111554988540913643347167948778404861099845961151998728662878854088239266688156473 -APoPgEKA0/r1FYmt/Iso6ChYK6dDU62Y+vH5h/LVE00biBYG1f7aL3GdllUTN+XQSHpqlDw8CD+9xojwZIMfgpgjOwLbbe7Aso460zLrg3R8aHBpbVt8iZUgjACwPYr5UyKbFzIAWaXcnYYQ+tCO9aDIuOz+/7eIF62C81zXFJVZ 175598490446477604563905754135475294999639698464908622773037381109011373179895295130424828038708319325919451724985361900259676699137657615076219968061941008972496322083528922054390781811699677037439989404270415929836486610353098273115864435328533577114470407444852521009919911888840405368858409835197558461785 -cL54ymLJhRx3U20Y9aUTIsXy9Ags+XHy4qk3F7uJyO46eiXSL7VrrR9vTQXAbETbu1YiVWfslsPht810eUDUVaVir6yLnXkywn46Ci42FEvVoTEFjO22uYcCh8nqB8H589w/+lVSlNrcILugwfdfCvK1iZzVimOO6l3qzfXToOU= 79171550718114578361958369278761819285111811576818442980166457146638966315793211967882077899426611721874954146020093740153495693185472340728106727284441726113022873005252623222594060645383105757498856463065370975867121188445567981809371870213273555432308279508351518168027875538720367440153667708369625129189 -QdQN4qW2QZq8/fmSaqlRiPSoDbhmF0oYjaY29HcKYGHdlOH0AMJb+RUIq1aszvVtjh7AYay2TNhaZMWQ6Qi3c42SNk3A1MVknT6zqiRCGjNFfxf/matbRLbTFQF832MAId708vrFLF/o2HpekMkc5hcHB6bkUUhEI1NLcMXwGck= 46226230186280253581676626651942823886592433541360244612432763620730826574920825070086312767146345247802570752482654580909236388357139147786783758670999083804670979821212991224400629053427330483809790366665043598754931511997925850227997764381723288657884346974360232490075739442406431704368767588177525348809 -cxHvCK/dyVDvaqCCQyLeaiBGA36mV5el+1lc2eUTkHGUzX5gU0QQCEp+iSXNJhIOON8VFpKOFsziuV0Z+3cegWRw/VnxnjXcBh6IDKdupzOPB+Yl8MA1ti/GrQjLC6ikcNYNjQT0ZThL7KTqEvvZJH68WYmD0IuK26swjNGIGaI= 80804939616399473443737611589382762718815989847332356984276911837267997590368701684135326680567847542004499684038240485603420973682522792156533112356849436451918522884749244246467852622918805139990256619014116276456718693703261686778030658826952213058982142604346352178078750879100976710761147710018148637090 -AIQ3OIZevkYoRGBmsFaXJobSfLeInuKKReVYNjP5VEPoMq0mXTltY6l09/rQ3d1JjsMD1PfA7emhxex+H9t3leBIfCi6Ux34GQEjXWpQc4awuiy9tbR077HaJyecvb8Qy1FTnOHoH5C043QJzrKYT/sFXjgB60piI8Y0R/hwxO4r 92845026347218330987427785323244729176754623818531419911990153715676845614711324345879159989637824921793015074978358052562420379797956750450245721653716740651389924718711940869162230097839047895842495414221110468446944827052871968998907462191349838598297775847512250220907563815783358238473966349820476321323 -LoG6ib5lUh57rdmSkZSWzBoudytFohS4uoU/uly6OaQDOi34GeNVxu/yr6RszJyL9JWkGNgFaBIv/HirH5zA9VQAL/6kpL93a0/GQ/nuHkHy3GWZPF/2+yJ0PfazQ40fWhHZfRxBngWslbguFPjj1XaJ37YzpQAYb/+QcUai9ic= 32658152290878644668906121702816147999633088014476055330179597550087921141413344679134407016170035735846077181424615228657687216737432274043674411132745299610950657139041836412322040866250189120286839287690983293111362228893996267791120043532014262644480689231457941173330523718758287779526551822788227954215 -AKu2jgOQCCfYZ3CLkXEH44aO4TtwMPeK/eq4FtNj9HZ9FxT0LLNJh0ZXPOaPJjgznvIw5C7/hNm7rUs1JeV8I8dj3nbS3EVERQz1gc/ckYB3H1bViWREOD5+TScDusi86YO/z4ar3dauKkg5kT1kKDuU/OP5kNMWvtJjHc4Vd3L3 120581042599355202025471829872601846477331097842315143148145881424071317426176264583672725691485724160094190478865850305422057632110749683552966861219554215519032344086824849470294473808177223497912069335635933312949412445851201918768630656712413082629164792850095444166888072453190903931430551124946191872759 -ANLs7OsR7oBM5jSjVADrk+Mx9d0TeieTIkxwWiJ5STKNQmW2EzPOjgbfcLhbYEhzzDFJveXO2dzz6/c8V5oW2yqg7VMx88DzEbpQnQpk/rOQRw9jbI4fxXNJHkNZCeysEVvFfLJb4ecsGA0xJ3Aylny/jP10ahPv2z5K99edGZSU 148116916208650944522110872759145096907599612943009577897396622287067669897712748449324334650112672914917664881091633448764667172850435775162090891556266912697811031318228334453406561952979778127173704706529448647577013482442758465809198730066784986763500579667100246958959793527011919373534159474250508506260 -AL+Er3n1qj+SBsZVtOMJYg4m0CN+DE6gRnC1F7nPvd2XnBe+QE0+LKfcpUDHVNxoydW4BDzNVwnUNbyjXZ+iuddPtO9hchVEI36UiuL0ydeldFpOZ9mtHJaAF6abd0MlHw4vXRf8CbOvXb5N4s76ggijlZBjRtU563sSmBcyq6Zt 134488725667189507159811764480908602790838430340670328479145818969651133017546803581865897303917708192047926432630297993507146075655594931523561067937580218599890162311074002344315818494246433967228889645359283635389151927472221799543158424012020308449895562192866672439712148770104592027035768027605661099629 -AK/04XOBSjjPpuFXTDF82RNWnKqZz9mJQbS2B5bn0ehFnBa6j+B+MazX+AxXTL/d5+hPLT1uexcnSMl3DcGGwKipOXg7Dtuj3pfJXHTrCqXAUYrIXI+8vKVQO55yQPGfzIg9SVgetwW1sDk+a28ZhJ5a9OddqNoi5C+dLce7ZtNb 123560902006294001923570614486104726169564351074482936927091682096999779538353161007361361829586988452098646362280351148131540524964916445100589671458589346440250329883789099771417949746709217272531950438336245613419967556433467843237384555807236658182067742367748737224684334525934210197178231424396818830171 -PzOEGHlihiveoWFAALY+LOfkRJfm0NUF/uR6cSU/tbpGAq4onNpr+iZIzEP5o3JBLOtDC595/NBPI0fzaXl0vQvgJs6KG8iKANjsLKQjIpZBkoKhdbG9MzTVQuAeuDW0w3sn2iMZ/v2dgAzRwfqmQYXJr3I2BbcwWraIJuZXw5A= 44381416070253681813077725822442106641846565789204187691647505370231831464947935035197059366680327425453811558282831465960889061956588244308214943856009686127871667376028831540813257349779756631357122923723235595360268572998278795110672666089470210929411514949652537714634611421849780859192966935514197771152 -APnuduN01GS9dO2m2uCLs400AR2lX7elOnIPC5U6e17qbukxWYzNhilZlM4kdGXAIeYpzFdSIW/gxRMZe6TXq9krFWRaaPyT2QwRfGHYnazS9F1QNYmW1zXdt+qVp0JGxmh5PyDstbP8Z3x50/E8Mb0gLLPhNAvzY2Jnr9A8Q1Hy 175507868985304663005133968393406051624825489142498103948374797086106732382869120248515993626061853699363294022457032257026588816021007648668265488426495800459085474654859258116280251546902009156490112550154951965894022789029787886785376415437170872937201839249103828294508088966180386198213606090453461193202 -QHEhL4iVzNdUsfG0izTEepwTOvxka8t/9MwuF1Ey6kxsI+ry4g4sJPgR2xMnbtOmvQn2NitAkfvA8JPCiL7a8+gmf+DVRDjKDfpfrtgAVmo+3rH+uJYTrKhAp8R7ggU2xIrvbIrgeUj7ieThPI3Rtap+IdkPCL853JC/+oKtytM= 45252649968839515171157821292772647085425694172492111870169593872127007254353374581972876464918186509502070064028725519394859148593053614163356612260257013360168930649423732336969778875205250872728821432415158634190866775855521719727700464116412886964736859295086745723651735554245035077902615220578218265299 -APeaekK4mVhEShCfM0mkRebcg1Iq5CgrFIEGOoh1nHzgebr5A9Wrhm9yD1Vd3e+fFD9urDRB4y5MHPJHX1U2NFToC+H8nQkFXL8bfd/9Wl2c7y8m0Mxwi53pLIdzETLbbfeOOtJvuSYYT3n8+/PeMnJ46UD8OfqtnFuS0/bVpFLS 173873040145444066957050580959132871919216036714423404143335635770937773583761934638398867981658394368476005882852706046614562314432695052874974848076542261910660410561876043187368112065303981001507235893831108658530338308496461162623683138693880482650786841100027392293758260448606244283355655751440485602002 -FqC/wgZDPTUoObPFSH5w4QR79zj/O+ZiHGTEnsBMwNZD3Gl/ClRDIsFMDDupNLgwgXsqCQbpwSOHOtAvUuAFwRpzt5B7lwIgtP5ism/AZRno5p+9WVSmUAM3glHsNtvYydz2MkXtnXzSMIR1ZVoLrdwMnckE4pbMzggqz+JZqxw= 15889870005716350976759704672045310928616256175405784574141006779373730686049218680335525720670897894546334915362899913262232170795516176419192840427996647372619000239408311568577050460995518058850793096827271653902583271225799114408537346367483775593212272587811309978019791973449354003275559762102731778844 -AJXNbv2AMWadF5h99ZAUy5gLnVK/hMaakFo0ZedtPNRJobxPmwj+h52G+Czd0U48G0V0wpdeUJC9v/4BhjzhCvNhNsdAT1+vQXDuteYQ1aspsEKLQ6b+NknO88QSbRJw53+KeOY2xe7PKOa4V89XnFFBF7wljRnIYrM8vvcqVQDk 105194875227030598769888785590198577650278341586165110611689226597424766274486797264032300493674927704016605741286512271390703088626381669060095573361828932336327125438452066548897528158329044309005232090053420259033538936293519762277428283316506398965916381374819450858053512398634116052299066189424983605476 -AIDRnUpBHepjBqYAlU4MG/8JxzX1mPxVNHpWvnEVgvqTQx/bisFPpXrYs3jAKIR/lzevYwhH0K/8Vvw4NK9iTMFqgSnU44AZztKsoxUXsEsl1UU56UscY5C7ciKU6vjjWI7nm/uHNOXdE82TQXkk2WX8ferNqZU5DaLFCb+zxb7w 90459642084794142567976043425270153270545560059973413835786695756473295513758287577749768786155290305189883600338986370836806413936196854410098516254596146039255388020628703824195128439558127783534033672712705194483515442668075394018677699876614329419492391568463215822656901183478205197671375262145069825776 -AIdvVNzJqWPgAShvi3GhbhMQft+SLigKGrhoqas2Saz/bA9u9Td6fAxa2LjrAqshW6cnm2aalc3Yv6RW/Y8vg7Ho31NSaRjT4zMUenykcC0/Y88UNxREi85wdnHwGytms6Lq49H8/7EFGJIyL1PLRWPmZn6XFkegscI/HUq/hiKm 95105613103051650721863964216778532448106311156426028879315612217763044797186635476805213120469258258125661666950525364331551671653846368977016286153840829836509696804585927581668281228810410814602664419962214359687545209312836366693384158782798559255789953908588601637765910472073600954502095647132310971046 -DdchOPjXrI6lpV84IdKCisPmdqZan8AARXRLADEhixsfXCYuO+WhNatI/fM1vgv+/TxwwIQjIfG1vOZcB36JUfjHYdItYQ70vUXaVFdpqvoBGyfOTU50Ds/11iGPCF8mWiQwR30/XAXytqDZtaVJVWsgHD3RigBSnSHhnvZAWYg= 9719024770319024562623340689338530708271347986326272393419504304391837979619189392867902307307106771234732135400958362219711925045600118964223238147375808749507928768896918369395426933218443166133187066167663170936604731896932630589251946733237697936733924510107175304126061649311812536190882160340308613512 -I+Z6rdTOt26/v3dtUP1plITb15fjb6aMDvqFS3AD1+nxBqnnk7ISGE9j6dv762EIWQpMzcCG5NCCq35KOHEwRXP28zup6olOMt3CBFgYVcBE2pWOpGiO19G/iFweYZXZPY5HgIkex7HBbb7l6HhomPc2sLL/IRhh2oogyHx2JMM= 25210054612455888156900839678249806510561198051210010474517915819801056434402727631042894881559517808906460418029149538469607239850657781476308872923928122553395468026744382526167194202058040459679991391557937527079948356545086684521068912222036707113005006607012596093923970784177288565193670152033981048003 -ALbBoyelCs4UkfnPjMT3S67ujhBHBEE0uxLx6kSGZq2IOMU/QdWYPFElRgYC/y++334FSEycjS6NAJJo2ITpZCO5AjNJ93J3WYgbDLiwu1VzKHX6ItfFNEk45km+QTi07+pDKcKNd1k0mxqpLd/PuZd5hRpPDDoKBb6i+mrCb2yF 128335905497646745013379107761994003743181143126608677203818152878840562628631384684712779135591095534911406031545494164782375276574093777950840330452805743803067864740000758175436633463846967335728314347497013853264454015790847388463800323796888198433722196292529074568758149650782323407298620158495364705413 -ANwlxEkeqmqYTxw1ZwMi1v2wo4ntPaEYZYoTLTJQfa+kuIksnHW9va243HAiOixd+rviVdm1dEwzESBbX0wiJNtRBpP+bnRxy4xOBjNoOB0c/tfka5JVwu5eeskyHx4V3inLviUaj86Yck42n5NaJFMfBvhzVftZ/YF9WBITI8g6 154592850289860621115358362871905683265658659789986179554827712019629689749439795961607030363152337159590319622241556795951071651584979664762468782303706550885785493534656062553770262954861884613383561063525714923031691298088562054236178003658891902606245782350998076658704876516153027797371814038658244397114 diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/trustroot.txt b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/trustroot.txt deleted file mode 100644 index 5fe885f55..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/trustroot.txt +++ /dev/null @@ -1,120 +0,0 @@ -======================================== -Trust root parsing checking -======================================== - ----------------------------------------- -14: Does not parse ----------------------------------------- -baz.org -*.foo.com -http://*.schtuff.*/ -ftp://foo.com -ftp://*.foo.com -http://*.foo.com:80:90/ -foo.*.com -http://foo.*.com -http://www.* -http://*foo.com/ - - - -5 - ----------------------------------------- -12: Insane ----------------------------------------- -http://*/ -https://*/ -http://*.com -http://*.com/ -https://*.com/ -http://*.com.au/ -http://*.co.uk/ -http://*.foo.notatld/ -https://*.foo.notatld/ -http://*.museum/ -https://*.museum/ -http://kink.fm/should/be/sane - ----------------------------------------- -14: Sane ----------------------------------------- -http://*.schtuff.com/ -http://*.foo.schtuff.com/ -http://*.schtuff.com -http://www.schtuff.com/ -http://www.schutff.com -http://*.this.that.schtuff.com/ -http://*.foo.com/path -http://*.foo.com/path?action=foo2 -http://x.foo.com/path?action=foo2 -http://x.foo.com/path?action=%3D -http://localhost:8081/ -http://localhost:8082/?action=openid -https://foo.com/ -http://goathack.livejournal.org:8020/openid/login.bml - -======================================== -return_to matching -======================================== - ----------------------------------------- -30: matches ----------------------------------------- -http://*/ http://cnn.com/ -http://*/ http://livejournal.com/ -http://*/ http://met.museum/ -http://*:8081/ http://met.museum:8081/ -http://localhost:8081/x?action=openid http://localhost:8081/x?action=openid -http://*.foo.com http://b.foo.com -http://*.foo.com http://b.foo.com/ -http://*.foo.com/ http://b.foo.com -http://b.foo.com http://b.foo.com -http://b.foo.com http://b.foo.com/ -http://b.foo.com/ http://b.foo.com -http://*.b.foo.com http://b.foo.com -http://*.b.foo.com http://b.foo.com/ -http://*.b.foo.com/ http://b.foo.com -http://*.b.foo.com http://x.b.foo.com -http://*.b.foo.com http://w.x.b.foo.com -http://*.bar.co.uk http://www.bar.co.uk -http://*.uoregon.edu http://x.cs.uoregon.edu -http://x.com/abc http://x.com/abc -http://x.com/abc http://x.com/abc/def -http://*.x.com http://x.com/gallery -http://*.x.com http://foo.x.com/gallery -http://foo.x.com http://foo.x.com/gallery/xxx -http://*.x.com/gallery http://foo.x.com/gallery -http://localhost:8082/?action=openid http://localhost:8082/?action=openid -http://goathack.livejournal.org:8020/ http://goathack.livejournal.org:8020/openid/login.bml -https://foo.com https://foo.com -http://Foo.com http://foo.com -http://foo.com http://Foo.com -http://foo.com/?x=y http://foo.com/?x=y&a=b - ----------------------------------------- -23: does not match ----------------------------------------- -http://*/ ftp://foo.com/ -http://*/ xxx -http://*.x.com/abc http://foo.x.com -http://*.x.com/abc http://*.x.com -http://*.com/ http://*.com/ -http://x.com/abc http://x.com/ -http://x.com/abc http://x.com/a -http://x.com/abc http://x.com/ab -http://x.com/abc http://x.com/abcd -http://*.cs.uoregon.edu http://x.uoregon.edu -http://*.foo.com http://bar.com -http://*.foo.com http://www.bar.com -http://*.bar.co.uk http://xxx.co.uk -https://foo.com http://foo.com -http://foo.com https://foo.com -http://foo.com:80 http://foo.com -http://foo.com http://foo.com:80 -http://foo.com:81 http://foo.com:80 -http://*:80 http://foo.com:81 -http://foo.com/?a=b http://foo.com/?x=y -http://foo.com/?a=b http://foo.com/?x=y&a=b -http://foo.com/?a=b http://foo.com/ -http://*.oo.com/ http://foo.com/ diff --git a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/urinorm.txt b/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/urinorm.txt deleted file mode 100644 index 95262fe2d..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Auth/OpenID/data/urinorm.txt +++ /dev/null @@ -1,79 +0,0 @@ -Already normal form -http://example.com/ -http://example.com/ - -Add a trailing slash -http://example.com -http://example.com/ - -Remove an empty port segment -http://example.com:/ -http://example.com/ - -Remove a default port segment -http://example.com:80/ -http://example.com/ - -Capitalization in host names -http://wWw.exaMPLE.COm/ -http://www.example.com/ - -Capitalization in scheme names -htTP://example.com/ -http://example.com/ - -Capitalization in percent-escaped reserved characters -http://example.com/foo%2cbar -http://example.com/foo%2Cbar - -Unescape percent-encoded unreserved characters -http://example.com/foo%2Dbar%2dbaz -http://example.com/foo-bar-baz - -remove_dot_segments example 1 -http://example.com/a/b/c/./../../g -http://example.com/a/g - -remove_dot_segments example 2 -http://example.com/mid/content=5/../6 -http://example.com/mid/6 - -remove_dot_segments: single-dot -http://example.com/a/./b -http://example.com/a/b - -remove_dot_segments: double-dot -http://example.com/a/../b -http://example.com/b - -remove_dot_segments: leading double-dot -http://example.com/../b -http://example.com/b - -remove_dot_segments: trailing single-dot -http://example.com/a/. -http://example.com/a/ - -remove_dot_segments: trailing double-dot -http://example.com/a/.. -http://example.com/ - -remove_dot_segments: trailing single-dot-slash -http://example.com/a/./ -http://example.com/a/ - -remove_dot_segments: trailing double-dot-slash -http://example.com/a/../ -http://example.com/ - -Test of all kinds of syntax-based normalization -hTTPS://a/./b/../b/%63/%7bfoo%7d -https://a/b/c/%7Bfoo%7D - -Unsupported scheme -ftp://example.com/ -fail - -Non-absolute URI -http:/foo -fail \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/Discover.php b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/Discover.php deleted file mode 100644 index 27a9ebc77..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/Discover.php +++ /dev/null @@ -1,171 +0,0 @@ -base_url = $base_url; - } - - function get($url, $headers = null) - { - $current_url = $url; - while (true) { - $parsed = parse_url($current_url); - $path = substr($parsed['path'], 1); - $data = generateSample($path, $this->base_url); - - if ($data === null) { - return new Services_Yadis_HTTPResponse($current_url, - 404, - array(), - ''); - } - - $response = mkResponse($data); - if (in_array($response->status, array(301, 302, 303, 307))) { - $current_url = $response->headers['location']; - } else { - $response->final_url = $current_url; - return $response; - } - } - } -} - -class MockFetcher { - function MockFetcher() { - $this->count = 0; - } - - function get($uri, $headers = null, $body = null) - { - $this->count++; - if ($this->count == 1) { - $headers = array(strtolower('X-XRDS-Location') . ': http://unittest/404'); - return new Services_Yadis_HTTPResponse($uri, 200, $headers, ''); - } else { - return new Services_Yadis_HTTPResponse($uri, 404); - } - } -} - -class TestSecondGet extends PHPUnit_TestCase { - function test_404() - { - $uri = "http://something.unittest/"; - $response = null; - $fetcher = new MockFetcher(); - $this->assertTrue( - Services_Yadis_Yadis::discover($uri, $response, $fetcher) === null); - } -} - -class _TestCase extends PHPUnit_TestCase { - var $base_url = 'http://invalid.unittest/'; - - function _TestCase($input_name, $id_name, $result_name, $success) - { - $this->input_name = $input_name; - $this->id_name = $id_name; - $this->result_name = $result_name; - $this->success = $success; - $this->fetcher = new TestFetcher($this->base_url); - parent::PHPUnit_TestCase(); - } - - function setUp() - { - list($this->input_url, $this->expected) = generateResult($this->base_url, - $this->input_name, - $this->id_name, - $this->result_name, - $this->success); - } - - function runTest() - { - if ($this->expected === null) { - $response = array(); - $this->assertTrue( - Services_Yadis_Yadis::discover($this->input_url, $response, - $this->fetcher) === null); - } else { - $response = array(); - $result = Services_Yadis_Yadis::discover($this->input_url, - $response, - $this->fetcher); - - if ($result === null) { - $this->fail("Discovery result was null"); - return; - } - - $this->assertEquals($this->input_url, $result->request_uri); - - $msg = 'Identity URL mismatch: actual = %s, expected = %s'; - $msg = sprintf($msg, $result->uri, $this->expected->uri); - $this->assertEquals($this->expected->uri, $result->uri, $msg); - - $msg = 'Content mismatch: actual = %s, expected = %s'; - $msg = sprintf($msg, $result->body, $this->expected->body); - $this->assertEquals($this->expected->body, $result->body, $msg); - - $this->assertEquals($this->expected->xrds_uri, $result->xrds_uri); - $this->assertEquals($this->expected->content_type, $result->content_type); - } - } - - function getName() - { - if ($this->input_url) { - return $this->input_url; - } else { - return $this->input_name; - } - } -} - -class Tests_Services_Yadis_Discover extends PHPUnit_TestSuite { - - function getName() - { - return "Tests_Services_Yadis_Discover"; - } - - function Tests_Services_Yadis_Discover() - { - global $testlist; - - foreach ($testlist as $test) { - list($success, $input_name, $id_name, $result_name) = $test; - $this->addTest(new _TestCase($input_name, $id_name, $result_name, $success)); - } - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/DiscoverData.php b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/DiscoverData.php deleted file mode 100644 index 5fb9865ef..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/DiscoverData.php +++ /dev/null @@ -1,148 +0,0 @@ -', $example_xrds), - array('YADIS_HEADER', 'X-XRDS-Location'), - array('NAME', $test_name)); - - foreach ($mapping as $pair) { - list($k, $v) = $pair; - $template = str_replace($k, $v, $template); - } - - return $template; -} - -function generateSample($test_name, $base_url, - $_example_xrds = null, $filename = null) -{ - global $example_xrds, $default_test_file; - - if ($_example_xrds === null) { - $_example_xrds = $example_xrds; - } - - if ($filename === null) { - $filename = $default_test_file; - } - - $template = getData($filename, $test_name); - - if ($template === null) { - return null; - } - - return fillTemplate($test_name, $template, $base_url, $_example_xrds); -} - -function generateResult($base_url, $input_name, $id_name, $result_name, $success) -{ - $input_url = $base_url . $input_name; // urlparse.urljoin(base_url, input_name) - - // If the name is null then we expect the protocol to fail, which - // we represent by null - if ($id_name === null) { - // assert result_name is null - return array($input_url, null); // DiscoveryFailure - } - - $result = generateSample($result_name, $base_url); - list($headers, $content) = explode("\n\n", $result, 2); - $header_lines = explode("\n", $headers); - $ctype = null; - foreach ($header_lines as $header_line) { - if (strpos($header_line, 'Content-Type:') === 0) { - list($temp, $ctype) = explode(":", $header_line, 2); - $ctype = trim($ctype); - break; - } - } - - $id_url = $base_url . $id_name; - - $result = new Services_Yadis_Yadis(); - $result->uri = $id_url; - if ($success) { - $result->xrds_uri = $base_url . $result_name; - } else { - $result->xrds_uri = null; - } - $result->content_type = $ctype; - $result->body = $content; - return array($input_url, $result); -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/ParseHTML.php b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/ParseHTML.php deleted file mode 100644 index 744af4567..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/ParseHTML.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'Tests/Services/Yadis/TestUtil.php'; -require_once 'Services/Yadis/ParseHTML.php'; -require_once 'PHPUnit.php'; - -class Tests_Services_Yadis_ParseTest extends PHPUnit_TestCase { - function Tests_Services_Yadis_ParseTest($case) - { - list($result, $comment, $html) = $case; - - $this->result = $result; - $this->comment = $comment; - $this->html_string = $html; - $this->parser = new Services_Yadis_ParseHTML(); - } - - function getName() - { - return $this->comment; - } - - function runTest() - { - $value = $this->parser->getHTTPEquiv($this->html_string); - - if ($this->result == "EOF") { - $this->assertTrue($value === null); - } else if ($this->result == "None") { - $this->assertTrue($value === null); - } else { - $this->assertEquals($this->result, $value); - } - } -} - -class Tests_Services_Yadis_ParseHTML extends PHPUnit_TestSuite { - - function getName() - { - return "Tests_Services_Yadis_Parse"; - } - - function parseTests($s) - { - $tests = array(); - - $cases = preg_split("/\f\n/", $s); - - foreach ($cases as $case) { - // Split the case text on newline, and keep the first two - // lines and re-join the rest (those are the HTML). - $parts = explode("\n", $case); - $result = $parts[0]; - $html_comment = $parts[1]; - $html_string = implode("\n", array_slice($parts, 2)); - $tests[] = array($result, $html_comment, $html_string); - } - - return $tests; - } - - function Tests_Services_Yadis_ParseHTML() - { - $test_data = Tests_Services_Yadis_readdata('test1-parsehtml.txt'); - - $test_cases = $this->parseTests($test_data); - - foreach ($test_cases as $case) { - $this->addTest(new Tests_Services_Yadis_ParseTest($case)); - } - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/TestUtil.php b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/TestUtil.php deleted file mode 100644 index e6d7a57ac..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/TestUtil.php +++ /dev/null @@ -1,28 +0,0 @@ - 1, - 'pip.xrds' => 2 - ); - - foreach ($files as $filename => $service_count) { - $xml = Tests_Services_Yadis_readdata($filename); - $xrds = Services_Yadis_XRDS::parseXRDS($xml); - - $this->assertTrue($xrds !== null); - - if ($xrds) { - $this->assertEquals(count($xrds->services()), $service_count); - } else { - $this->fail("Could not test XRDS service list because the ". - "XRDS object is null"); - } - } - } - - function test_good_multi() - { - $xml = Tests_Services_Yadis_readdata("brian.multi.xrds"); - $xrds = Services_Yadis_XRDS::parseXRDS($xml); - $this->assertTrue($xrds !== null); - $this->assertEquals(count($xrds->services()), 1); - $s = $xrds->services(); - $s = $s[0]; - - $types = $s->getTypes(); - - $this->assertTrue(count($types) == 1); - $this->assertEquals('http://openid.net/signon/1.0', - $types[0]); - } - - function test_good_uri_multi() - { - $xml = Tests_Services_Yadis_readdata("brian.multi_uri.xrds"); - $xrds = Services_Yadis_XRDS::parseXRDS($xml); - $this->assertTrue($xrds !== null); - $this->assertEquals(1, count($xrds->services())); - } - - function test_uri_sorting() - { - $xml = Tests_Services_Yadis_readdata("uri_priority.xrds"); - $xrds = Services_Yadis_XRDS::parseXRDS($xml); - $services = $xrds->services(); - $uris = $services[0]->getURIs(); - - $expected_uris = array( - "http://zero.priority/", - "http://one.priority/", - "http://no.priority/" - ); - - $this->assertEquals($uris, $expected_uris); - } - - function test_bad() - { - $this->assertTrue(Services_Yadis_XRDS::parseXRDS(null) === null); - $this->assertTrue(Services_Yadis_XRDS::parseXRDS(5) === null); - $this->assertTrue(Services_Yadis_XRDS::parseXRDS('') === null); - $this->assertTrue(Services_Yadis_XRDS::parseXRDS('') === - null); - $this->assertTrue(Services_Yadis_XRDS::parseXRDS("\x00") === null); - } - - function test_getCanonicalID() - { - $canonicalIDtests = array( - array("@ootao*test1", "delegated-20060809.xrds", - "@!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01"), - array("@ootao*test1", "delegated-20060809-r1.xrds", - "@!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01"), - array("@ootao*test1", "delegated-20060809-r2.xrds", - "@!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01"), - array("@ootao*test1", "sometimesprefix.xrds", - "@!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01"), - array("@ootao*test1", "prefixsometimes.xrds", - "@!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01"), - array("=keturn*isDrummond", "spoof1.xrds", null), - array("=keturn*isDrummond", "spoof2.xrds", null), - array("@keturn*is*drummond", "spoof3.xrds", null), - // Don't let IRI authorities be canonical for the GCS. - array("phreak.example.com", "delegated-20060809-r2.xrds", null) - // TODO: Refs - // ("@ootao*test.ref", "ref.xrds", "@!BAE.A650.823B.2475") - ); - - foreach ($canonicalIDtests as $tupl) { - list($iname, $filename, $expectedID) = $tupl; - - $xml = Tests_Services_Yadis_readdata($filename); - $xrds = Services_Yadis_XRDS::parseXRDS($xml); - $this->_getCanonicalID($iname, $xrds, $expectedID); - } - } - - function _getCanonicalID($iname, $xrds, $expectedID) - { - if ($expectedID === null) { - $result = Services_Yadis_getCanonicalID($iname, $xrds); - if ($result !== false) { - $this->fail($iname.' (got '.$result.')'); - } - } else { - $cid = Services_Yadis_getCanonicalID($iname, $xrds); - $this->assertEquals(Services_Yadis_XRI($expectedID), $cid); - } - } - - function test_services_filters() - { - // First, just be sure that service objects do the right - // thing. - $xml = Tests_Services_Yadis_readdata("brian_priority.xrds"); - $xrds = Services_Yadis_XRDS::parseXRDS($xml, - array('openid' => - 'http://openid.net/xmlns/1.0')); - $this->assertTrue($xrds !== null); - - // Get list of service objects. - $services = $xrds->services(); - $this->assertEquals(count($services), 2, "first service count"); - - // Query the two service objecs. - $s1 = $services[0]; - $this->assertEquals($s1->getPriority(), 1, "first priority check"); - $types = $s1->getTypes(); - $this->assertEquals(count($types), 1, "first type check"); - - $s2 = $services[1]; - $this->assertEquals($s2->getPriority(), 2, "second priority check"); - $types = $s2->getTypes(); - $this->assertEquals(count($types), 1, "second type check"); - - function _DelegateFilter(&$service) - { - if ($service->getElements('openid:Delegate')) { - return true; - } - return false; - } - - // Make sure that a filter which matches both DOES match both. - $this->assertEquals(count( - $xrds->services(array("_DelegateFilter"))), 2, - "_DelegateFilter check"); - - // This filter should match all services in the document. - function _HasTypeAndURI(&$service) - { - if ($service->getTypes() && - $service->getURIs()) { - return true; - } - return false; - } - - // This filter should only match one. - function _URIMatchesSchtuff(&$service) - { - $uris = $service->getURIs(); - - foreach ($uris as $uri) { - if (preg_match("|schtuff|", $uri)) { - return true; - } - } - return false; - } - - // This filter should only match one. - function _URIMatchesMyOpenID(&$service) - { - $uris = $service->getURIs(); - - foreach ($uris as $uri) { - if (preg_match("|myopenid|", $uri)) { - return true; - } - } - return false; - } - - // Make sure a pair of filters in ALL mode only match one service. - $this->assertEquals(count( - $xrds->services(array("_HasTypeAndURI", - "_URIMatchesSchtuff"), - SERVICES_YADIS_MATCH_ALL)), 1, - "_HasTypeAndURI / _URIMatchesSchtuff check"); - - // Make sure a pair of filters in ALL mode only match one service. - $this->assertEquals(count( - $xrds->services(array("_HasTypeAndURI", - "_URIMatchesMyOpenID"), - SERVICES_YADIS_MATCH_ALL)), 1, - "_HasTypeAndURI / _URIMatchesMyOpenID check"); - - // Make sure a pair of filters in ANY mode matches both services. - $this->assertEquals(count( - $xrds->services(array("_URIMatchesMyOpenID", - "_URIMatchesSchtuff"))), 2, - "_URIMatchesMyOpenID / _URIMatchesSchtuff check"); - - // Make sure the order of the services returned (when using - // filters) is correct. - $s = $xrds->services(array("_URIMatchesMyOpenID", - "_URIMatchesSchtuff")); - - $this->assertTrue($s[0]->getPriority() === 1, "s[0] priority check"); - $this->assertTrue($s[1]->getPriority() === 2, "s[1] priority check"); - - // Make sure a bad filter mode gets us a null service list. - $this->assertTrue($xrds->services(array("_URIMatchesMyOpenID", - "_URIMatchesSchtuff"), - "bogus") === null, - "bogus filter check"); - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/XRI.php b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/XRI.php deleted file mode 100644 index f00fef136..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/XRI.php +++ /dev/null @@ -1,141 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once "PHPUnit.php"; -require_once "Services/Yadis/XRIRes.php"; -require_once "Services/Yadis/XRI.php"; -require_once "Services/Yadis/Yadis.php"; - -class Tests_Services_Yadis_XriDiscoveryTestCase extends PHPUnit_TestCase { - function runTest() - { - $this->assertEquals( - Services_Yadis_identifierScheme('=john.smith'), 'XRI'); - - $this->assertEquals( - Services_Yadis_identifierScheme('@smiths/john'), 'XRI'); - - $this->assertEquals( - Services_Yadis_identifierScheme('smoker.myopenid.com'), 'URI'); - - $this->assertEquals( - Services_Yadis_identifierScheme('xri://=john'), 'XRI'); - } -} - -class Tests_Services_Yadis_XriEscapingTestCase extends PHPUnit_TestCase { - function test_escaping_percents() - { - $this->assertEquals(Services_Yadis_escapeForIRI('@example/abc%2Fd/ef'), - '@example/abc%252Fd/ef'); - } - - function runTest() - { - // no escapes - $this->assertEquals('@example/foo/(@bar)', - Services_Yadis_escapeForIRI('@example/foo/(@bar)')); - - // escape slashes - $this->assertEquals('@example/foo/(@bar%2Fbaz)', - Services_Yadis_escapeForIRI('@example/foo/(@bar/baz)')); - - $this->assertEquals('@example/foo/(@bar%2Fbaz)/(+a%2Fb)', - Services_Yadis_escapeForIRI('@example/foo/(@bar/baz)/(+a/b)')); - - // escape query ? and fragment - $this->assertEquals('@example/foo/(@baz%3Fp=q%23r)?i=j#k', - Services_Yadis_escapeForIRI('@example/foo/(@baz?p=q#r)?i=j#k')); - } -} - -class Tests_Services_Yadis_ProxyQueryTestCase extends PHPUnit_TestCase { - function setUp() - { - $this->proxy_url = 'http://xri.example.com/'; - $this->fetcher = Services_Yadis_Yadis::getHTTPFetcher(); - $this->proxy = new Services_Yadis_ProxyResolver($fetcher, - $this->proxy_url); - $this->servicetype = 'xri://+i-service*(+forwarding)*($v*1.0)'; - $this->servicetype_enc = 'xri%3A%2F%2F%2Bi-service%2A%28%2Bforwarding%29%2A%28%24v%2A1.0%29'; - } - - function runTest() - { - $st = $this->servicetype; - $ste = $this->servicetype_enc; - $args_esc = "_xrd_r=application%2Fxrds%2Bxml&_xrd_t=" . $ste; - $h = $this->proxy_url; - $this->assertEquals($h . '=foo?' . $args_esc, - $this->proxy->queryURL('=foo', $st)); - $this->assertEquals($h . '=foo/bar?baz&' . $args_esc, - $this->proxy->queryURL('=foo/bar?baz', $st)); - $this->assertEquals($h . '=foo/bar?baz=quux&' . $args_esc, - $this->proxy->queryURL('=foo/bar?baz=quux', $st)); - $this->assertEquals($h . '=foo/bar?mi=fa&so=la&' . $args_esc, - $this->proxy->queryURL('=foo/bar?mi=fa&so=la', $st)); - - $args_esc = "_xrd_r=application%2Fxrds%2Bxml&_xrd_t=" . $ste; - $h = $this->proxy_url; - $this->assertEquals($h . '=foo/bar??' . $args_esc, - $this->proxy->queryURL('=foo/bar?', $st)); - $this->assertEquals($h . '=foo/bar????' . $args_esc, - $this->proxy->queryURL('=foo/bar???', $st)); - } -} - -class Tests_Services_Yadis_TestGetRootAuthority extends PHPUnit_TestCase { - function runTest() - { - $xris = array( - array("@foo", "@"), - array("@foo*bar", "@"), - array("@*foo*bar", "@"), - array("@foo/bar", "@"), - array("!!990!991", "!"), - array("!1001!02", "!"), - array("=foo*bar", "="), - array("(example.com)/foo", "(example.com)"), - array("(example.com)*bar/foo", "(example.com)"), - array("baz.example.com/foo", "baz.example.com"), - array("baz.example.com:8080/foo", "baz.example.com:8080") - // Looking at the ABNF in XRI Syntax 2.0, I don't think you can - // have example.com*bar. You can do (example.com)*bar, but that - // would mean something else. - // ("example.com*bar/(=baz)", "example.com*bar"), - // ("baz.example.com!01/foo", "baz.example.com!01"), - ); - - foreach ($xris as $tupl) { - list($thexri, $expected_root) = $tupl; - $this->assertEquals(Services_Yadis_XRI($expected_root), - Services_Yadis_rootAuthority($thexri), - 'rootAuthority test ('.$thexri.')'); - } - } -} - -class Tests_Services_Yadis_XRI extends PHPUnit_TestSuite { - function getName() - { - return "Tests_Services_Yadis_XRI"; - } - - function Tests_Services_Yadis_XRI() - { - $this->addTest(new Tests_Services_Yadis_ProxyQueryTestCase()); - $this->addTest(new Tests_Services_Yadis_XriEscapingTestCase()); - $this->addTest(new Tests_Services_Yadis_XriDiscoveryTestCase()); - $this->addTest(new Tests_Services_Yadis_TestGetRootAuthority()); - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/Yadis.php b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/Yadis.php deleted file mode 100644 index 5fbfe4aad..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/Yadis.php +++ /dev/null @@ -1,91 +0,0 @@ -input_url = $input_url; - $this->redir_uri = $redir_uri; - $this->xrds_uri = $xrds_uri; - $this->num = $num; - } - - function getName() - { - return "Yadis discovery test ".$this->num; - } - - function runTest() - { - $http_response = null; - $fetcher = Services_Yadis_Yadis::getHTTPFetcher(); - $y = Services_Yadis_Yadis::discover( - $this->input_url, $http_response, $fetcher); - $this->assertTrue($y !== null); - - // Compare parts of returned Yadis object to expected URLs. - $this->assertEquals($this->redir_uri, $y->uri); - - if ($this->xrds_uri) { - $this->assertEquals($this->xrds_uri, $y->xrds_uri); - // Compare contents of actual HTTP GET with that of Yadis - // response. - $f = Services_Yadis_Yadis::getHTTPFetcher(); - $response = $f->get($this->xrds_uri); - - $this->assertEquals($response->body, $y->body); - } else { - $this->assertTrue($y->xrds_uri === null); - } - } -} - -class Tests_Services_Yadis_Yadis extends PHPUnit_TestSuite { - - function getName() - { - return "Tests_Services_Yadis_Yadis"; - } - - function parseTests($data) - { - $cases = explode("\n", $data); - $tests = array(); - - foreach ($cases as $line) { - if ($line && ($line[0] != "#")) { - $tests[] = explode("\t", $line, 3); - } - } - - return $tests; - } - - function Tests_Services_Yadis_Yadis() - { - $test_data = Tests_Services_Yadis_readdata('manifest.txt'); - - $test_cases = $this->parseTests($test_data); - - $i = 0; - foreach ($test_cases as $case) { - $i++; - list($input, $redir, $xrds) = $case; - $this->addTest(new Tests_Services_Yadis_DiscoveryTest($input, - $redir, - $xrds, $i)); - } - } - -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/README b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/README deleted file mode 100644 index 3739cf1c7..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/README +++ /dev/null @@ -1,12 +0,0 @@ -delegated-20060809.xrds - results from proxy.xri.net, determined by - Drummond and Kevin to be incorrect. -delegated-20060809-r1.xrds - Drummond's 1st correction -delegated-20060809-r2.xrds - Drummond's 2nd correction - -spoofs: keturn's (=!E4)'s attempts to log in with Drummond's i-number (=!D2) -spoof1.xrds -spoof2.xrds -spoof3.xrds - attempt to steal @!C0!D2 by having "at least one" CanonicalID - match the $res service ProviderID. - -ref.xrds - resolving @ootao*test.ref, which refers to a neustar XRI. diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/accept.txt b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/accept.txt deleted file mode 100644 index 0853321a8..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/accept.txt +++ /dev/null @@ -1,118 +0,0 @@ -# Accept: [Accept: header value from RFC2616, -# http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html] -# Available: [whitespace-separated content types] -# Expected: [Accept-header like list, containing the available content -# types with their q-values] - -Accept: */* -Available: text/plain -Expected: text/plain; q=1.0 - -Accept: */* -Available: text/plain, text/html -Expected: text/plain; q=1.0, text/html; q=1.0 - -# The order matters -Accept: */* -Available: text/html, text/plain -Expected: text/html; q=1.0, text/plain; q=1.0 - -Accept: text/*, */*; q=0.9 -Available: text/plain, image/jpeg -Expected: text/plain; q=1.0, image/jpeg; q=0.9 - -Accept: text/*, */*; q=0.9 -Available: image/jpeg, text/plain -Expected: text/plain; q=1.0, image/jpeg; q=0.9 - -# wildcard subtypes still reject differing main types -Accept: text/* -Available: image/jpeg, text/plain -Expected: text/plain; q=1.0 - -Accept: text/html -Available: text/html -Expected: text/html; q=1.0 - -Accept: text/html, text/* -Available: text/html -Expected: text/html; q=1.0 - -Accept: text/html, text/* -Available: text/plain, text/html -Expected: text/plain; q=1.0, text/html; q=1.0 - -Accept: text/html, text/*; q=0.9 -Available: text/plain, text/html -Expected: text/html; q=1.0, text/plain; q=0.9 - -# If a more specific type has a higher q-value, then the higher value wins -Accept: text/*; q=0.9, text/html -Available: text/plain, text/html -Expected: text/html; q=1.0, text/plain; q=0.9 - -Accept: */*, text/*; q=0.9, text/html; q=0.1 -Available: text/plain, text/html, image/monkeys -Expected: image/monkeys; q=1.0, text/plain; q=0.9, text/html; q=0.1 - -Accept: text/*, text/html; q=0 -Available: text/html -Expected: - -Accept: text/*, text/html; q=0 -Available: text/html, text/plain -Expected: text/plain; q=1.0 - -Accept: text/html -Available: text/plain -Expected: - -Accept: application/xrds+xml, text/html; q=0.9 -Available: application/xrds+xml, text/html -Expected: application/xrds+xml; q=1.0, text/html; q=0.9 - -Accept: application/xrds+xml, */*; q=0.9 -Available: application/xrds+xml, text/html -Expected: application/xrds+xml; q=1.0, text/html; q=0.9 - -Accept: application/xrds+xml, application/xhtml+xml; q=0.9, text/html; q=0.8, text/xml; q=0.7 -Available: application/xrds+xml, text/html -Expected: application/xrds+xml; q=1.0, text/html; q=0.8 - -# See http://www.rfc-editor.org/rfc/rfc3023.txt, section A.13 -Accept: application/xrds -Available: application/xrds+xml -Expected: - -Accept: application/xrds+xml -Available: application/xrds -Expected: - -Accept: application/xml -Available: application/xrds+xml -Expected: - -Available: application/xrds+xml -Accept: application/xml -Expected: - - - -################################################# -# The tests below this line are documentation of how this library -# works. If the implementation changes, it's acceptable to change the -# test to reflect that. These are specified so that we can make sure -# that the current implementation actually works the way that we -# expect it to given these inputs. - -Accept: text/html;level=1 -Available: text/html -Expected: text/html; q=1.0 - -Accept: text/html; level=1, text/html; level=9; q=0.1 -Available: text/html -Expected: text/html; q=1.0 - -Accept: text/html; level=9; q=0.1, text/html; level=1 -Available: text/html -Expected: text/html; q=1.0 diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.multi.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.multi.xrds deleted file mode 100644 index 1bc95dea9..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.multi.xrds +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - http://openid.net/signon/1.1 - http://www.myopenid.com/server - http://frank.myopenid.com/ - - - - - - - http://bar.com/ - http://bar.com/server - - - - http://foo.com - http://foo.com/server - - - - - - - http://openid.net/signon/1.0 - http://www.myopenid.com/server - http://brian.myopenid.com/ - - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.multi_uri.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.multi_uri.xrds deleted file mode 100644 index fce5ef72f..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.multi_uri.xrds +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - http://openid.net/signon/1.0 - http://www.myopenid.com/server - http://example.com/server - - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.xrds deleted file mode 100644 index c7539fe1b..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian.xrds +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - http://openid.net/signon/1.0 - http://www.myopenid.com/server - http://brian.myopenid.com/ - - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian_priority.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian_priority.xrds deleted file mode 100644 index 273077dfa..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/brian_priority.xrds +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - http://openid.net/signon/1.0 - http://www.schtuff.com/?action=openid_server - http://users.schtuff.com/brian - - - - http://openid.net/signon/1.0 - http://www.myopenid.com/server - http://brian.myopenid.com/ - - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809-r1.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809-r1.xrds deleted file mode 100644 index f994b140e..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809-r1.xrds +++ /dev/null @@ -1,34 +0,0 @@ - - - - *ootao - - 2006-08-09T22:07:13.000Z - xri://@ - !5BAD.2AA.3C72.AF46 - @!5BAD.2AA.3C72.AF46 - - xri://$res*auth*($v*2.0) - xri://!!1003 - application/xrds+xml;trust=none - http://resolve.ezibroker.net/resolve/@ootao/ - - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - - *test1 - SUCCESS - xri://!!1003 - !0000.0000.3B9A.CA01 - @!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01 - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809-r2.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809-r2.xrds deleted file mode 100644 index 68c08dc44..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809-r2.xrds +++ /dev/null @@ -1,34 +0,0 @@ - - - - *ootao - - 2006-08-09T22:07:13.000Z - xri://@ - !5BAD.2AA.3C72.AF46 - @!5BAD.2AA.3C72.AF46 - - xri://$res*auth*($v*2.0) - xri://@!5BAD.2AA.3C72.AF46 - application/xrds+xml;trust=none - http://resolve.ezibroker.net/resolve/@ootao/ - - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - - *test1 - SUCCESS - xri://@!5BAD.2AA.3C72.AF46 - !0000.0000.3B9A.CA01 - @!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01 - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809.xrds deleted file mode 100644 index 073ee6889..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/delegated-20060809.xrds +++ /dev/null @@ -1,34 +0,0 @@ - - - - *ootao - - 2006-08-09T22:07:13.000Z - xri://@ - !5BAD.2AA.3C72.AF46 - @!5BAD.2AA.3C72.AF46 - - xri://$res*auth*($v*2.0) - - application/xrds+xml;trust=none - http://resolve.ezibroker.net/resolve/@ootao/ - - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - - *test1 - SUCCESS - xri://!!1003 - !0000.0000.3B9A.CA01 - @!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01 - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/example-xrds.xml b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/example-xrds.xml deleted file mode 100644 index 101ba3bd5..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/example-xrds.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - http://example.com/ - http://www.openidenabled.com/ - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/manifest.txt b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/manifest.txt deleted file mode 100644 index 2f05d5e6c..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/manifest.txt +++ /dev/null @@ -1,30 +0,0 @@ -# This file contains test cases for doing YADIS identity URL and -# service discovery. For each case, there are three URLs. The first -# URL is the user input. The second is the identity URL and the third -# is the URL from which the XRDS document should be read. -# -# The file format is as follows: -# User URL Identity URL XRDS URL -# -# blank lines and lines starting with # should be ignored. -# -# To use this test: -# -# 1. Run your discovery routine on the User URL. -# -# 2. Compare the identity URL returned by the discovery routine to the -# identity URL on that line of the file. It must be an EXACT match. -# -# 3. Do a regular HTTP GET on the XRDS URL. Compare the content that -# was returned by your discovery routine with the content returned -# from that URL. It should also be an exact match. - -http://www.openidenabled.com/resources/yadis-test/discover/equiv http://www.openidenabled.com/resources/yadis-test/discover/equiv http://www.openidenabled.com/resources/yadis-test/discover/xrds -http://www.openidenabled.com/resources/yadis-test/discover/header http://www.openidenabled.com/resources/yadis-test/discover/header http://www.openidenabled.com/resources/yadis-test/discover/xrds -http://www.openidenabled.com/resources/yadis-test/discover/xrds http://www.openidenabled.com/resources/yadis-test/discover/xrds http://www.openidenabled.com/resources/yadis-test/discover/xrds -http://www.openidenabled.com/resources/yadis-test/discover/xrds_html http://www.openidenabled.com/resources/yadis-test/discover/xrds_html -http://www.openidenabled.com/resources/yadis-test/discover/redir_equiv http://www.openidenabled.com/resources/yadis-test/discover/equiv http://www.openidenabled.com/resources/yadis-test/discover/xrds -http://www.openidenabled.com/resources/yadis-test/discover/redir_header http://www.openidenabled.com/resources/yadis-test/discover/header http://www.openidenabled.com/resources/yadis-test/discover/xrds -http://www.openidenabled.com/resources/yadis-test/discover/redir_xrds http://www.openidenabled.com/resources/yadis-test/discover/xrds http://www.openidenabled.com/resources/yadis-test/discover/xrds -http://www.openidenabled.com/resources/yadis-test/discover/redir_xrds_html http://www.openidenabled.com/resources/yadis-test/discover/xrds_html -http://www.openidenabled.com/resources/yadis-test/discover/redir_redir_equiv http://www.openidenabled.com/resources/yadis-test/discover/equiv http://www.openidenabled.com/resources/yadis-test/discover/xrds diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/no-xrd.xml b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/no-xrd.xml deleted file mode 100644 index ca66f7359..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/no-xrd.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/not-xrds.xml b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/not-xrds.xml deleted file mode 100644 index 7f5bfd511..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/not-xrds.xml +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/pip.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/pip.xrds deleted file mode 100644 index ca271ab19..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/pip.xrds +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - http://openid.net/signon/1.1 - http://openid.net/sreg/1.0 - https://pip.verisignlabs.com/server - - - - http://openid.net/signon/1.0 - http://openid.net/sreg/1.0 - https://pip.verisignlabs.com/server - - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/prefixsometimes.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/prefixsometimes.xrds deleted file mode 100644 index 5522a6e5e..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/prefixsometimes.xrds +++ /dev/null @@ -1,34 +0,0 @@ - - - - *ootao - - 2006-08-09T22:07:13.000Z - xri://@ - !5BAD.2AA.3C72.AF46 - @!5BAD.2AA.3C72.AF46 - - xri://$res*auth*($v*2.0) - xri://@!5BAD.2AA.3C72.AF46 - application/xrds+xml;trust=none - http://resolve.ezibroker.net/resolve/@ootao/ - - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - - *test1 - SUCCESS - xri://@!5BAD.2AA.3C72.AF46 - !0000.0000.3B9A.CA01 - xri://@!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01 - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/ref.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/ref.xrds deleted file mode 100644 index 69cf683db..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/ref.xrds +++ /dev/null @@ -1,109 +0,0 @@ - - - - *ootao - - 2006-08-15T18:56:09.000Z - xri://@ - !5BAD.2AA.3C72.AF46 - @!5BAD.2AA.3C72.AF46 - - xri://$res*auth*($v*2.0) - - application/xrds+xml;trust=none - http://resolve.ezibroker.net/resolve/@ootao/ - - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - - *test.ref - SUCCESS - xri://!!1003 - !0000.0000.3B9A.CA03 - @!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA03 - @!BAE.A650.823B.2475 - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - - - !BAE.A650.823B.2475 - - 2006-08-15T18:56:10.000Z - xri://@ - !BAE.A650.823B.2475 - @!BAE.A650.823B.2475 - - (+wdnc) - - (+wdnc) - http://www.tcpacompliance.us - - - xri://$res*auth*($v*2.0) - - application/xrds+xml;trust=none - http://dev.dready.org/cgi-bin/xri - - - (+i-name) - - (+i-name) - http://www.inames.net - - - xri://+i-service*(+contact)*($v*1.0) - - xri://!!1001 - (+contact) - - text/html - - http://www.neustar.biz - - - - - !BAE.A650.823B.2475 - - 2006-08-15T18:56:10.000Z - xri://@ - !BAE.A650.823B.2475 - @!BAE.A650.823B.2475 - - (+wdnc) - - (+wdnc) - http://www.tcpacompliance.us - - - xri://$res*auth*($v*2.0) - - application/xrds+xml;trust=none - http://dev.dready.org/cgi-bin/xri - - - (+i-name) - - (+i-name) - http://www.inames.net - - - xri://+i-service*(+contact)*($v*1.0) - - xri://!!1001 - (+contact) - - text/html - - http://www.neustar.biz - - - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/sometimesprefix.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/sometimesprefix.xrds deleted file mode 100644 index eff755543..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/sometimesprefix.xrds +++ /dev/null @@ -1,34 +0,0 @@ - - - - *ootao - - 2006-08-09T22:07:13.000Z - xri://@ - !5BAD.2AA.3C72.AF46 - xri://@!5BAD.2AA.3C72.AF46 - - xri://$res*auth*($v*2.0) - xri://@!5BAD.2AA.3C72.AF46 - application/xrds+xml;trust=none - http://resolve.ezibroker.net/resolve/@ootao/ - - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - - *test1 - SUCCESS - xri://@!5BAD.2AA.3C72.AF46 - !0000.0000.3B9A.CA01 - @!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01 - - http://openid.net/signon/1.0 - - https://linksafe.ezibroker.net/server/ - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof1.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof1.xrds deleted file mode 100644 index 8e870c815..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof1.xrds +++ /dev/null @@ -1,25 +0,0 @@ - - - - *keturn - xri://= - !E4 - =!E4 - - - xri://$res*auth*($v*2.0) - http://keturn.example.com/resolve/ - =!E4 - - - - *isDrummond - =!E4 - !D2 - =!D2 - - http://openid.net/signon/1.0 - http://keturn.example.com/openid - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof2.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof2.xrds deleted file mode 100644 index 7547561e1..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof2.xrds +++ /dev/null @@ -1,25 +0,0 @@ - - - - *keturn - xri://= - !E4 - =!E4 - - - xri://$res*auth*($v*2.0) - http://keturn.example.com/resolve/ - xri://= - - - - *isDrummond - xri://= - !D2 - =!D2 - - http://openid.net/signon/1.0 - http://keturn.example.com/openid - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof3.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof3.xrds deleted file mode 100644 index f4c43c9b4..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/spoof3.xrds +++ /dev/null @@ -1,37 +0,0 @@ - - - - *keturn - xri://@ - @E4 - @!E4 - - - xri://$res*auth*($v*2.0) - http://keturn.example.com/resolve/ - @!E4 - - - - *is - @!E4 - !D2 - =!C0 - =!E4!01 - - xri://$res*auth*($v*2.0) - http://keturn.example.com/resolve/ - @!C0 - - - - *drummond - @!C0 - !D2 - @!C0!D2 - - http://openid.net/signon/1.0 - http://keturn.example.com/openid - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-discover.txt b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-discover.txt deleted file mode 100644 index 7ec9b8788..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-discover.txt +++ /dev/null @@ -1,137 +0,0 @@ -equiv -Status: 200 OK -Content-Type: text/html - - - - -Joe Schmoe's Homepage - - -

Joe Schmoe's Homepage

-

Blah blah blah blah blah blah blah

- - - -header -Status: 200 OK -Content-Type: text/html -YADIS_HEADER: URL_BASE/xrds - - - -Joe Schmoe's Homepage - - -

Joe Schmoe's Homepage

-

Blah blah blah blah blah blah blah

- - -xrds -Status: 200 OK -Content-Type: application/xrds+xml - - - -xrds_ctparam -Status: 200 OK -Content-Type: application/xrds+xml; charset=UTF8 - - - -xrds_ctcase -Status: 200 OK -Content-Type: appliCATION/XRDS+xml - - - -xrds_html -Status: 200 OK -Content-Type: text/html - - - -redir_equiv -Status: 302 Found -Content-Type: text/plain -Location: URL_BASE/equiv - -You are presently being redirected. - -redir_header -Status: 302 Found -Content-Type: text/plain -Location: URL_BASE/header - -You are presently being redirected. - -redir_xrds -Status: 302 Found -Content-Type: application/xrds+xml -Location: URL_BASE/xrds - - - -redir_xrds_html -Status: 302 Found -Content-Type: text/plain -Location: URL_BASE/xrds_html - -You are presently being redirected. - -redir_redir_equiv -Status: 302 Found -Content-Type: text/plain -Location: URL_BASE/redir_equiv - -You are presently being redirected. - -lowercase_header -Status: 200 OK -Content-Type: text/html -x-xrds-location: URL_BASE/xrds - - - -Joe Schmoe's Homepage - - -

Joe Schmoe's Homepage

-

Blah blah blah blah blah blah blah

- - -404_server_response -Status: 404 Not Found - -EEk! - -500_server_response -Status: 500 Server error - -EEk! - -201_server_response -Status: 201 Created - -EEk! - -404_with_header -Status: 404 Not Found -YADIS_HEADER: URL_BASE/xrds - -EEk! - -404_with_meta -Status: 404 Not Found -Content-Type: text/html - - - - -Joe Schmoe's Homepage - - -

Joe Schmoe's Homepage

-

Blah blah blah blah blah blah blah

- - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-parsehtml.txt b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-parsehtml.txt deleted file mode 100644 index b005c253c..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-parsehtml.txt +++ /dev/null @@ -1,133 +0,0 @@ -found - - - -found - - - -found - - - -found - - - -found - - - -found - - - -found - - - - - -& - - - -found - - - - - - - -found - - - - - - - -/ - - - - - - - - - - - -EOF - - -None - - - - A boring document - - -

A boring document

-

There's really nothing interesting about this

- - - -EOF - - - -EOF - - - -None - - - -None - - - -None - - - -None - - - - - - - -None - - - - Someone's blog - - -

My blog

-

This is my blog

-

Comments

-

- - - -None - - - - -None - - - - -None - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-xrd.xml b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-xrd.xml deleted file mode 100644 index 60e5ca7b1..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/test1-xrd.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - http://openid.net/signon/1.0 - http://www.myopenid.com/server - http://josh.myopenid.com/ - - - - http://lid.netmesh.org/sso/2.0b5 - http://lid.netmesh.org/2.0b5 - http://mylid.net/josh - - - - http://openid.net/signon/1.0 - http://www.livejournal.com/openid/server.bml - http://www.livejournal.com/users/nedthealpaca/ - - - - http://typekey.com/services/1.0 - joshhoyt - - - - http://openid.net/signon/1.0 - http://www.schtuff.com/openid - http://users.schtuff.com/josh - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/uri_priority.xrds b/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/uri_priority.xrds deleted file mode 100644 index b1a2f65c3..000000000 --- a/modules/member/php-openid-1.2.3/Tests/Services/Yadis/data/uri_priority.xrds +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - http://openid.net/signon/1.0 - http://no.priority/ - http://one.priority/ - http://zero.priority/ - - - - diff --git a/modules/member/php-openid-1.2.3/Tests/TestDriver.php b/modules/member/php-openid-1.2.3/Tests/TestDriver.php deleted file mode 100644 index 621773b2d..000000000 --- a/modules/member/php-openid-1.2.3/Tests/TestDriver.php +++ /dev/null @@ -1,189 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -require_once 'PHPUnit.php'; -require_once 'PHPUnit/GUI/HTML.php'; - -error_reporting(E_ALL); - -$__test_errors = array(); - -function __handler($code, $message) -{ - global $__test_errors; - - if ($code == E_USER_WARNING) { - $__test_errors[] = $message; - } -} - -function __raiseError($message) -{ - set_error_handler('__handler'); - trigger_error($message, E_USER_WARNING); - restore_error_handler(); -} - -function __getError() -{ - global $__test_errors; - if ($__test_errors) { - return array_pop($__test_errors); - } - return null; -} - -/** - * Load the tests that are defined in the named modules. - * - * If you have Tests/Foo.php which defines a test class called - * Tests_Foo, the call would look like: - * - * loadTests('Tests/', array('Foo')) - * - * @param string $test_dir The root of the test hierarchy. Must end - * with a / - * - * @param array $test_names The names of the modules in which the - * tests are defined. This should not include the root of the test - * hierarchy. - */ -function loadTests($test_dir, $test_names) -{ - $suites = array(); - - foreach ($test_names as $filename) { - $filename = $test_dir . $filename . '.php'; - $class_name = str_replace('/', '_', $filename); - $class_name = basename($class_name, '.php'); - if (!global_require_once($filename)) { - continue; - } - $test = new $class_name($class_name); - - if (is_a($test, 'PHPUnit_TestCase')) { - $s = new PHPUnit_TestSuite(); - $s->setName($class_name); - $s->addTestSuite($class_name); - $test = $s; - - $tc_array_name = $class_name . '_other'; - if (array_key_exists($tc_array_name, $GLOBALS) && - is_array($GLOBALS[$tc_array_name])) { - foreach ($GLOBALS[$tc_array_name] as $tc) { - $test->addTestSuite(get_class($tc)); - } - } - } - - $suites[] = $test; - } - - return $suites; -} - -function global_require_once($name) -{ - $f = @include_once $name; - if (!$f) { - return false; - } - foreach (get_defined_vars() as $k => $v) { - if (!in_array($k, array('name', 'GLOBALS'))) { - $GLOBALS[$k] = $v; - } - } - return true; -} - -$_tests = array( - array( - 'dir' => 'Tests/Auth/OpenID/', - 'files' => array( - 'Association', - 'BigMath', - 'Consumer', - 'CryptUtil', - 'DiffieHellman', - 'HMACSHA1', - 'KVForm', - 'Util', - 'Parse', - 'StoreTest', - 'Server', - 'TrustRoot', - 'Discover', - 'OpenID_Yadis', - 'URINorm'), - ), - array( - 'dir' => 'Tests/Services/Yadis/', - 'files' => array( - 'ParseHTML', - 'XRDS', - 'Yadis', - 'Discover', - 'XRI' - ) - ) - ); - -function selectTests($names) -{ - global $_tests; - $lnames = array_map('strtolower', $names); - $include = array(); - $exclude = array(); - foreach ($_tests as $package) { - foreach ($package['files'] as $t) { - $l = strtolower($t); - if (in_array($l, $lnames)) { - $include[] = $t; - } - - if (in_array("/$l", $lnames)) { - $exclude[] = $t; - } - } - } - - if (!count($include)) { - $include = array(); - foreach ($_tests as $package) { - $include = array_merge($include, $package['files']); - } - } - - return array_diff($include, $exclude); -} - -// Load OpenID library tests -function loadSuite($names=null) -{ - global $_tests; - if ($names === null) { - $names = array(); - foreach ($_tests as $package) { - $names = array_merge($names, $package['files']); - } - } - $selected = selectTests($names); - $result = array(); - foreach ($_tests as $package) { - $result = array_merge($result, loadTests($package['dir'], $selected)); - } - return $result; -} -?> diff --git a/modules/member/php-openid-1.2.3/admin/adminutil.php b/modules/member/php-openid-1.2.3/admin/adminutil.php deleted file mode 100644 index 738983866..000000000 --- a/modules/member/php-openid-1.2.3/admin/adminutil.php +++ /dev/null @@ -1,30 +0,0 @@ - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/admin/brace_style.pl b/modules/member/php-openid-1.2.3/admin/brace_style.pl deleted file mode 100644 index ed8332f31..000000000 --- a/modules/member/php-openid-1.2.3/admin/brace_style.pl +++ /dev/null @@ -1,81 +0,0 @@ -#!/usr/bin/env perl -w - -use strict; - -my $filename = $ARGV[0]; - -if (!$filename) { - print "Usage: modified_otb.pl \n"; - exit(1); -} - -my @results = (); -my $line_num = 0; -my ($NONE, $BRACE, $PAREN) = (0, 1, 2); -my $looking_for = $NONE; -my $last_func_name = ""; - -open(HANDLE, "<", $filename) or die "Cannot open $filename\n"; - -# Read the file and track the lines with length > $max_length. -while () { - $line_num++; - # Subtract one because the newline doesn't count toward the - # length. - chomp; - - if (!$looking_for && - ($_ =~ /^\s*function/) && - ($_ =~ /\{/)) { - # Done (bad): we found a function whose opening line ends with - # a brace, which goes against the PEAR coding guidelines. - - ($last_func_name) = $_ =~ /function\s*(.*)\(/; - - push @results, "'$last_func_name' prototype ends with opening ". - "brace, line $line_num"; - } elsif (!$looking_for && - ($_ =~ /^\s*function/) && - ($_ !~ /\)/)) { - ($last_func_name) = $_ =~ /function\s*(.*)\(/; - $looking_for = $PAREN; - } elsif (($looking_for == $PAREN) && - ($_ =~ /\)/) && - ($_ =~ /\{/)) { - # Done (bad): function prototype and brace are on the same - # line. - push @results, "'$last_func_name' prototype ends with with ". - "opening brace, line $line_num"; - $looking_for = $NONE; - } elsif (($looking_for == $PAREN) && - ($_ =~ /\)/) && - ($_ !~ /\{/)) { - $looking_for = $BRACE; - } elsif (!$looking_for && - ($_ =~ /^\s*function/) && - ($_ =~ /\)/) && - ($_ !~ /\{/)) { - ($last_func_name) = $_ =~ /function\s*(.*)\(/; - $looking_for = $BRACE; - } elsif (($looking_for == $BRACE) && - ($_ eq "{")) { - $looking_for = $NONE; - # Done (good): the brace was found on the line after the - # function prototype. - } else { - # We got here because we got a line that we're not interested - # in. - $looking_for = $NONE; - } -} - -# If any long lines were found, notify and exit(1); otherwise, -# exit(0). -if (@results) { - foreach my $result (@results) { - print "$filename: $result\n"; - } - exit(1); -} else { - exit(0); -} diff --git a/modules/member/php-openid-1.2.3/admin/checkimport b/modules/member/php-openid-1.2.3/admin/checkimport deleted file mode 100644 index 05776d8f4..000000000 --- a/modules/member/php-openid-1.2.3/admin/checkimport +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env php - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/admin/checkimports b/modules/member/php-openid-1.2.3/admin/checkimports deleted file mode 100644 index c4fa471a6..000000000 --- a/modules/member/php-openid-1.2.3/admin/checkimports +++ /dev/null @@ -1,2 +0,0 @@ -#!/usr/bin/env bash -./admin/findphp | xargs -L 1 ./admin/checkimport \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/admin/darcs-ignore b/modules/member/php-openid-1.2.3/admin/darcs-ignore deleted file mode 100644 index 8291ce2e0..000000000 --- a/modules/member/php-openid-1.2.3/admin/darcs-ignore +++ /dev/null @@ -1,3 +0,0 @@ -~$ -^doc(/|$) -^CHANGELOG$ diff --git a/modules/member/php-openid-1.2.3/admin/docblocks b/modules/member/php-openid-1.2.3/admin/docblocks deleted file mode 100644 index 6764ff145..000000000 --- a/modules/member/php-openid-1.2.3/admin/docblocks +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env bash -#set -e - -bad_files=$(./admin/findphp | xargs -l1 /usr/bin/env perl admin/docblocks.pl) - -if [ "$bad_files" ] - then - cat <&2 -These files do not start with docblocks: - -$bad_files - -EOF - exit 1 -fi diff --git a/modules/member/php-openid-1.2.3/admin/docblocks.pl b/modules/member/php-openid-1.2.3/admin/docblocks.pl deleted file mode 100644 index 0483dbb06..000000000 --- a/modules/member/php-openid-1.2.3/admin/docblocks.pl +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env perl -w - -use strict; - -my $filename = $ARGV[0]; - -if (!$filename) { - print "Usage: docblocks.pl \n"; - exit(1); -} - -my %allowed = ("" => 1, - " 1); - -open(HANDLE, "<", $filename) or die "Cannot open $filename\n"; - -while () { - chomp; - - if ($_ =~ /\/\*\*/) { - exit(0); - } elsif (!$allowed{$_}) { - print $filename."\n"; - exit(1); - } -} diff --git a/modules/member/php-openid-1.2.3/admin/findglobals b/modules/member/php-openid-1.2.3/admin/findglobals deleted file mode 100644 index 2fcb0e61e..000000000 --- a/modules/member/php-openid-1.2.3/admin/findglobals +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env bash -# Find all PHP modules that are likely to have global variables -set -e - -./admin/findphp | xargs grep '^\$' diff --git a/modules/member/php-openid-1.2.3/admin/findphp b/modules/member/php-openid-1.2.3/admin/findphp deleted file mode 100644 index d529af716..000000000 --- a/modules/member/php-openid-1.2.3/admin/findphp +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env bash - -find Auth Tests \ - -name _darcs -prune -o \ - \( -type f \ - -a -name \*.php \ - -a ! -name .\* \ - \) | grep -v Tests diff --git a/modules/member/php-openid-1.2.3/admin/fixperms b/modules/member/php-openid-1.2.3/admin/fixperms deleted file mode 100644 index 2b710d13a..000000000 --- a/modules/member/php-openid-1.2.3/admin/fixperms +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash -cat < [length]\n"; - exit(1); -} - -# Set a default maximum line length. -my $max_length = $ARGV[1] || 80; - -my @lines = (); -my $line_num = 0; - -open(HANDLE, "<", $filename) or die "Cannot open $filename\n"; - -# Read the file and track the lines with length > $max_length. -while () { - $line_num++; - # Subtract one because the newline doesn't count toward the - # length. - if (length($_) - 1 > $max_length) { - push @lines, $line_num; - } -} - -# If more than five long lines were found, truncate to five and -# indicate that others were present, too. -if (@lines > 5) { - @lines = @lines[0..4]; - push @lines, "and others"; -} - -# If any long lines were found, notify and exit(1); otherwise, -# exit(0). -if (@lines) { - print $filename." (line".((@lines > 1) ? "s" : "")." ". - join(", ", @lines)." exceed".((@lines == 1) ? "s" : ""). - " length $max_length)\n"; - exit(1); -} else { - exit(0); -} diff --git a/modules/member/php-openid-1.2.3/admin/makedoc.sh b/modules/member/php-openid-1.2.3/admin/makedoc.sh deleted file mode 100644 index b8411e307..000000000 --- a/modules/member/php-openid-1.2.3/admin/makedoc.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -set -v -phpdoc -p on -t doc -d Auth,admin/tutorials,Services -ti "JanRain OpenID Library" \ - --ignore \*~,BigMath.php,Discover.php,CryptUtil.php,DiffieHellman.php,HMACSHA1.php,KVForm.php,Parse.php,TrustRoot.php,HTTPFetcher.php,ParanoidHTTPFetcher.php,PlainHTTPFetcher.php,ParseHTML.php,URINorm.php,XRI.php,XRIRes.php,Misc.php \ - -dn "OpenID" -o "HTML:frames:phphtmllib" diff --git a/modules/member/php-openid-1.2.3/admin/mathlib b/modules/member/php-openid-1.2.3/admin/mathlib deleted file mode 100644 index 53f50d06c..000000000 --- a/modules/member/php-openid-1.2.3/admin/mathlib +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env php -type; -} - -?> diff --git a/modules/member/php-openid-1.2.3/admin/nobadbraces b/modules/member/php-openid-1.2.3/admin/nobadbraces deleted file mode 100644 index 90769d313..000000000 --- a/modules/member/php-openid-1.2.3/admin/nobadbraces +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -set -e - -./admin/findphp | xargs -l1 /usr/bin/env perl admin/brace_style.pl diff --git a/modules/member/php-openid-1.2.3/admin/nobadcase b/modules/member/php-openid-1.2.3/admin/nobadcase deleted file mode 100644 index 104a7af49..000000000 --- a/modules/member/php-openid-1.2.3/admin/nobadcase +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/env bash - -bad=$(./admin/findphp | xargs egrep -n '\b(TRUE|FALSE|NULL)\b') - -if [ ! -z "$bad" ] - then - cat <&2 -These files contain wrongly capitalized constants: - -$bad - -EOF - exit 1 -fi diff --git a/modules/member/php-openid-1.2.3/admin/nolonglines b/modules/member/php-openid-1.2.3/admin/nolonglines deleted file mode 100644 index 48d1c7d7f..000000000 --- a/modules/member/php-openid-1.2.3/admin/nolonglines +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash - -files_with_long_lines=$(./admin/findphp | - xargs -l1 wc -L | - awk '$1 > 80 { print $2 }' | - xargs -l1 --replace=FILENAME /usr/bin/env perl admin/longlines.pl FILENAME 80) - -if [ "$files_with_long_lines" ] - then - cat <&2 -Found lines > 80 characters in: - -$files_with_long_lines -EOF - exit 1 -fi diff --git a/modules/member/php-openid-1.2.3/admin/notabs b/modules/member/php-openid-1.2.3/admin/notabs deleted file mode 100644 index b6a7df012..000000000 --- a/modules/member/php-openid-1.2.3/admin/notabs +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash -# -# Look in the local directory for PHP files that have tabs in them. If -# there are files with tabs, print the list of files and exit with -# non-zero status. - -tabs=$(./admin/findphp | xargs egrep -n ' ' | sort) - -if [ ! -z "$tabs" ] - then - cat <&2 -Found tabs in: -$tabs -EOF - exit 1 -fi diff --git a/modules/member/php-openid-1.2.3/admin/open_tag b/modules/member/php-openid-1.2.3/admin/open_tag deleted file mode 100644 index c9f464494..000000000 --- a/modules/member/php-openid-1.2.3/admin/open_tag +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/env bash - -bad_files=$(./admin/findphp | - xargs -l1 grep -H -m 1 "&2 -These PHP files do NOT begin with \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/admin/package.xml b/modules/member/php-openid-1.2.3/admin/package.xml deleted file mode 100644 index c959ba9ec..000000000 --- a/modules/member/php-openid-1.2.3/admin/package.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - %(package_name)s - %(package_summary)s - - %(package_description)s - - %(license_name)s - %(maintainers)s - - %(version)s - %(date)s - %(release_stability)s - - - - %(contents_version_1)s - - - - - diff --git a/modules/member/php-openid-1.2.3/admin/package2.xml b/modules/member/php-openid-1.2.3/admin/package2.xml deleted file mode 100644 index d3bd5251f..000000000 --- a/modules/member/php-openid-1.2.3/admin/package2.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - %(package_name)s - %(uri)s - %(package_summary)s - - %(package_description)s - - %(leads)s - %(date)s - - %(version)s - %(version)s - - - %(release_stability)s - %(release_stability)s - - %(license_name)s - - - - - %(contents)s - - - - - 4.3.0 - - - 1.4.5 - - - - - PHPUnit - pear.php.net - 1.1.1 - - - PEAR_DB - pear.php.net - 1.80 - - - pgsql - - - mysql - - - sqlite - - - bcmath - - - gmp - - - - - - diff --git a/modules/member/php-openid-1.2.3/admin/packagexml.py b/modules/member/php-openid-1.2.3/admin/packagexml.py deleted file mode 100644 index e83240594..000000000 --- a/modules/member/php-openid-1.2.3/admin/packagexml.py +++ /dev/null @@ -1,155 +0,0 @@ -#!/usr/bin/python - -import os -import os.path - -def makeMaintainerXML(leads): - maintainer_template = """ - - %(user)s - %(name)s - %(email)s - lead - - """ - - return "" + \ - "".join([maintainer_template % l for l in leads]) + \ - "" - -def makeLeadXML(leads): - lead_template = """ - - %(name)s - %(user)s - %(email)s - %(active)s - - """ - - return "".join([lead_template % l for l in leads]) - -INDENT_STRING = " " - -def buildContentsXMLFordir(dir_or_file, roles, depth=0, dir_role=None, - all_files=False): - """ - Returns a list of strings, each of which is either a XML - element for the given file or a element which contains other - elements. - """ - - try: - entries = os.listdir(dir_or_file) - dir_role_s = '' - if dir_role: - dir_role_s = ' role="%s"' % (dir_role) - lines = ['%s' % (INDENT_STRING * depth, - os.path.basename(dir_or_file), - dir_role_s)] - - for entry in entries: - lines += buildContentsXMLFordir(dir_or_file + os.sep + entry, roles, - depth + 1, dir_role, all_files) - - lines.append('%s' % (INDENT_STRING * depth)) - - return lines - except OSError: - try: - extension = dir_or_file.split(".")[-1] - except: - if not all_files: - return [] - - if all_files and dir_role: - return ['%s' % - (INDENT_STRING * depth, os.path.basename(dir_or_file), dir_role)] - elif extension in roles: # Ends in an extension we care about - return ['%s' % - (INDENT_STRING * depth, os.path.basename(dir_or_file), - roles[extension])] - else: - return [] - -def buildContentsXML(roles, *dirs): - lines = [] - - for directory in dirs: - lines.append("\n".join(buildContentsXMLFordir(directory, roles, 1))) - - return "\n".join(lines) - -def buildDocsXML(*dirs): - lines = [] - - for directory in dirs: - lines.append("\n".join(buildContentsXMLFordir(directory, {}, 1, 'doc', - all_files=True))) - - return "\n".join(lines) - -if __name__ == "__main__": - def usage(progname): - print "Usage: %s " % (progname) - - import sys - import time - - try: - import xmlconfig - except: - print "Could not import XML configuration module xmlconfig" - sys.exit(1) - - # Expect sys.argv[2] to be the name of the XML file template to - # use for processing. - try: - template_f = open(sys.argv[2], 'r') - except Exception, e: - usage(sys.argv[0]) - print "Could not open template file:", str(e) - sys.exit(1) - - # Expect sys.argv[1] to be the version number to include in the - # package.xml file. - try: - version = sys.argv[1] - except: - usage(sys.argv[0]) - sys.exit(2) - - # Expect sys.argv[3] to be the name of the release notes file. - try: - release_file = sys.argv[3] - release_file_h = open(release_file, 'r') - release_notes = release_file_h.read().strip() - release_file_h.close() - except Exception, e: - usage(sys.argv[0]) - print str(e) - sys.exit(3) - - data = xmlconfig.__dict__.copy() - - contentsXml = buildContentsXML({'php': 'php'}, *xmlconfig.contents_dirs) - docsXml = buildDocsXML(*xmlconfig.docs_dirs) - - contents = '\n' + contentsXml + \ - "\n" + docsXml + '\n ' - - contents_v1 = '\n' + contentsXml + \ - "\n" + docsXml + '\n ' - - data['contents'] = contents - data['contents_version_1'] = contents_v1 - data['leads'] = makeLeadXML(xmlconfig.leads) - data['maintainers'] = makeMaintainerXML(xmlconfig.leads) - data['date'] = time.strftime("%Y-%m-%d") - data['version'] = version - data['uri'] = "%s%s-%s.tgz" % (data['package_base_uri'], data['package_name'], - version) - data['release_notes'] = release_notes - - template_data = template_f.read() - print template_data % data diff --git a/modules/member/php-openid-1.2.3/admin/phpaliases.py b/modules/member/php-openid-1.2.3/admin/phpaliases.py deleted file mode 100644 index c4ce21684..000000000 --- a/modules/member/php-openid-1.2.3/admin/phpaliases.py +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env python - -"""This script searches files for functions that are just aliases in -PHP source code. This is not 100% reliable, so it should not be -automated, but it's useful to run once in a while to make sure that -all of the matches it finds are not really legitimate aliases. - -Usage: - - parse_aliases.py [PHP source code filename]... -""" - -import sys - -# Fetch this URL to get the file that is parsed into the aliases list -alias_url = 'http://www.zend.com/phpfunc/all_aliases.php' - -header_tok = ''; -footer_tok = ''; - -# Example line of the table that we parse: -# 'bzclosephp-src/ext/bz2/bz2.cfclose' - -import re - -line_re = re.compile(r''' -\A - -]+"> - -([^<>]+) - -]+">[^<>]+ - - -(?: - ]+\.php"> - ( [^<>]+ ) - -| ( [^<>]+ ) -) - - - - -\Z -''', re.VERBOSE) - -def parseString(s): - _, rest = s.split(header_tok, 1) - body, _ = rest.split(footer_tok, 1) - - lines = body.split('\n') - assert [s.strip() for s in lines[-2:]] == ['', ''] - assert lines[0].strip().startswith('|\$|)\s*\b(%s)\b' % ('|'.join(aliases.keys()))) - -def checkAliasesFile(alias_re, f): - found = [] - line_num = 1 - for line in f: - for mo in alias_re.finditer(line): - if mo.group(1): - continue - alias = mo.group(2) - found.append((line_num, alias)) - line_num += 1 - return found - -def checkAliases(alias_re, filename): - return checkAliasesFile(alias_re, file(filename, 'r')) - -def checkAliasesFiles(alias_re, filenames): - found = [] - for filename in filenames: - file_found = checkAliases(alias_re, filename) - found.extend([(filename, n, a) for (n, a) in file_found]) - return found - -def dumpResults(aliases, found, out=sys.stdout): - for filename, n, a in found: - print >>out, "%s:%d %s -> %s" % (filename, n, a, aliases[a]) - -def main(alias_file, *filenames): - aliases = parseFileName(alias_file) - alias_re = getAliasRE(aliases) - found = checkAliasesFiles(alias_re, filenames) - dumpResults(aliases, found) - return found - -if __name__ == '__main__': - found = main(*sys.argv[1:]) - if found: - sys.exit(1) diff --git a/modules/member/php-openid-1.2.3/admin/prepare-release b/modules/member/php-openid-1.2.3/admin/prepare-release deleted file mode 100644 index 98415a9da..000000000 --- a/modules/member/php-openid-1.2.3/admin/prepare-release +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env bash -# -# Prepare this repository for release - -REPO_ROOT=$(dirname $(dirname $(readlink --canonicalize "$0"))) -cd "$REPO_ROOT" - -bash ./admin/fixperms - -./admin/makedoc.sh - -darcs changes --from-tag=. --summary > CHANGELOG diff --git a/modules/member/php-openid-1.2.3/admin/runtests b/modules/member/php-openid-1.2.3/admin/runtests deleted file mode 100644 index 770c5fb53..000000000 --- a/modules/member/php-openid-1.2.3/admin/runtests +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env bash - -HERE=$(readlink --canonicalize $(dirname "$0")) - -test_import () { - ./admin/checkimports -} - -test_tabs () { - /usr/bin/env bash "$HERE/notabs" -} - -test_longlines () { - /usr/bin/env bash "$HERE/nolonglines" -} - -test_nobadbraces () { - /usr/bin/env bash "$HERE/nobadbraces" -} - -test_nobadcase () { - /usr/bin/env bash "$HERE/nobadcase" -} - -test_opentag () { - /usr/bin/env bash "$HERE/open_tag" -} - -test_docblocks () { - /usr/bin/env bash "$HERE/docblocks" -} - -test_php () { - if uname -a | grep -i cygwin >/dev/null 2>/dev/null ; then - /usr/bin/env php "$(dirname "$0")/texttest.php" --insecure-rand - else - /usr/bin/env php "$HERE/texttest.php" - fi -} - -tests="tabs longlines nobadbraces nobadcase opentag docblocks php import" - -failures= - -# Run in repository root (parent of this directory) -cd $(dirname "$HERE") - -chmod +x ./admin/fixperms -./admin/fixperms - -for test_name in $tests - do - echo "Running test $test_name" 1>&2 - if ! eval "test_$test_name" - then - failures="$failures $test_name" - fi -done - -if [ ! -z "$failures" ] - then - echo "Failures in: $failures" 1>&2 - exit 1 -fi diff --git a/modules/member/php-openid-1.2.3/admin/texttest.php b/modules/member/php-openid-1.2.3/admin/texttest.php deleted file mode 100644 index bf174a5dc..000000000 --- a/modules/member/php-openid-1.2.3/admin/texttest.php +++ /dev/null @@ -1,173 +0,0 @@ -failures() as $failure) { - echo $failure->toString(); - } - - foreach ($this->errors() as $failure) { - echo $failure->toString(); - } - } -} - -function microtime_float() -{ - list($usec, $sec) = explode(" ", microtime()); - return ((float)$usec + (float)$sec); -} - -$longopts = array('no-math', - 'math-lib=', - 'insecure-rand', - 'thorough'); - -$con = new Console_Getopt; -$args = $con->readPHPArgv(); -array_shift($args); -$options = $con->getopt2($args, "", $longopts); - -if (PEAR::isError($options)) { - print $options->message . "\n"; - exit(1); -} - -list($flags, $tests_to_run) = $options; - -$math_type = array(); -$thorough = false; -foreach ($flags as $flag) { - list($option, $value) = $flag; - switch ($option) { - case '--insecure-rand': - define('Auth_OpenID_RAND_SOURCE', null); - break; - case '--no-math': - define('Auth_OpenID_NO_MATH_SUPPORT', true); - break; - case '--math-lib': - $math_type[] = $value; - break; - case '--thorough': - define('Tests_Auth_OpenID_thorough', true); - break; - default: - print "Unrecognized option: $option\n"; - exit(1); - } -} - -// ******** Math library selection *********** - -if ($math_type) { - if (defined('Auth_OpenID_NO_MATH_SUPPORT')) { - print "--no-math and --math-lib are mutually exclusive\n"; - exit(1); - } - require_once('Auth/OpenID/BigMath.php'); - $new_extensions = array(); - foreach ($math_type as $lib) { - $found = false; - foreach ($_Auth_OpenID_math_extensions as $ext) { - if ($ext['extension'] == $lib) { - $new_extensions[] = $ext; - $found = true; - break; - } - } - - if (!$found) { - print "Unknown math library specified: $lib\n"; - exit(1); - } - } - $_Auth_OpenID_math_extensions = $new_extensions; -} - -// ******** End math library selection ********** - -$suites = loadSuite($argv); - -$totals = array( - 'run' => 0, - 'error' => 0, - 'failure' => 0, - 'time' => 0 - ); - -foreach ($suites as $suite) { - $name = $suite->getName(); - echo "========================================== -Test suite: $name ------------------------------------------- -"; - - $result = new TextTestResult(); - $before = microtime_float(); - $suite->run($result); - $after = microtime_float(); - - $run = $result->runCount(); - $error = $result->errorCount(); - $failure = $result->failureCount(); - $delta = $after - $before; - $totals['run'] += $run; - $totals['error'] += $error; - $totals['failure'] += $failure; - $totals['time'] += $delta; - $human_delta = round($delta, 3); - echo "\nRan $run tests in $human_delta seconds"; - if ($error || $failure) { - echo " with $error errors, $failure failures"; - } - echo " -========================================== - -"; - - $failures = $result->failures(); - foreach($failures as $failure) { - $test = $failure->failedTest(); - $testName = $test->getName(); - $exception = $failure->thrownException(); - echo "* Failure in $testName: $exception - -"; - } -} - -$before = microtime_float(); -$run = $totals['run']; -$error = $totals['error']; -$failure = $totals['failure']; -$time = round($totals['time'], 3); -echo "Ran a total of $run tests in $time seconds with $error errors, $failure failures\n"; -if ($totals['error'] || $totals['failure']) { - exit(1); -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/admin/tutorials/OpenID/OpenID.pkg b/modules/member/php-openid-1.2.3/admin/tutorials/OpenID/OpenID.pkg deleted file mode 100644 index 8df8de9ba..000000000 --- a/modules/member/php-openid-1.2.3/admin/tutorials/OpenID/OpenID.pkg +++ /dev/null @@ -1,81 +0,0 @@ - - - PHP OpenID API - - - - - JanRain, Inc. - - {@link mailto:openid@janrain.com openid@janrain.com} - - - - - - This is a complete implementation of the OpenID authentication - protocol. This package contains: - - - An OpenID server - An OpenID consumer - Stores for MySQL, PostgreSQL, SQLite, and filesystem-based OpenID data storage - PHPUnit unit tests - An example server and consumer - - - - - For Package Users - - - To install this package, copy the Auth/ - directory in this package to a directory in your PHP include path. - Alternatively, modify your PHP include path to include the - directory that contains Auth/. Any - applications that need this package will then be able to use it. - - - - - - For Developers - - - - See the server and consumer examples in the - examples/ directory of the package. For - details on how to run the examples, see - examples/README. If you want to create your - own OpenID data storage class, please see the {@link Auth_OpenID_OpenIDStore} - class. - - - - - - - References - - - - {@link http://www.openidenabled.com/openid/libraries/php PHP OpenID Library} - - - - {@link http://www.janrain.com JanRain, Inc.} - - - - {@link http://lists.openidenabled.com/mailman/listinfo/dev OpenID Development Discussion List} - - - - {@link http://www.openidenabled.com/yadis/libraries/php PHP Yadis Library} - - - - - - - diff --git a/modules/member/php-openid-1.2.3/admin/webtest.php b/modules/member/php-openid-1.2.3/admin/webtest.php deleted file mode 100644 index 1076623f0..000000000 --- a/modules/member/php-openid-1.2.3/admin/webtest.php +++ /dev/null @@ -1,12 +0,0 @@ -addSuites($suites); -$gui->show(); - -?> diff --git a/modules/member/php-openid-1.2.3/admin/xmlconfig.py b/modules/member/php-openid-1.2.3/admin/xmlconfig.py deleted file mode 100644 index 8042e7b20..000000000 --- a/modules/member/php-openid-1.2.3/admin/xmlconfig.py +++ /dev/null @@ -1,55 +0,0 @@ - -""" -This is the package.xml data needed for the PHP OpenID PEAR -package.xml file. Use the 'packagexml.py' program to generate a -package.xml file for a release of this library. -""" - -# This is a list of dicts describing the project leads. This will be -# used to generate XML elements. -leads = [ - {'name': 'Jonathan Daugherty', - 'user': 'cygnus', - 'email': 'cygnus@janrain.com', - 'active': 'yes'}, - {'name': 'Josh Hoyt', - 'user': 'jhoyt', - 'email': 'josh@janrain.com', - 'active': 'yes'} - ] - -# The package name. -package_name = 'Auth_OpenID' - -# The package description. -package_description = 'An implementation of the OpenID single sign-on authentication protocol.' - -# Package summary. -package_summary = 'PHP OpenID' - -# License string. -license_name = 'LGPL' - -# License URI. -license_uri = 'http://www.gnu.org/copyleft/lesser.txt' - -# Director(ies) containing package source, relative to the admin/ -# directory. All .php files in these directories will be included in -# the element of the output XML and will be assigned the -# role 'php'. -contents_dirs = ['../Auth', '../Services'] - -# Director(ies) containing package documentation. All files and -# subdirectories in these directories will be included in the -# element in the output XML and will be assigned the role -# 'doc'. -docs_dirs = ['../doc', '../examples'] - -# The HTTP package base URI. This is the place on the web where the -# PEAR-installable tarballs will live, and this (plus the package -# tarball name) will be the URL that users pass to "pear install". -package_base_uri = 'http://www.openidenabled.com/resources/downloads/php-openid/pear/' - -# The release stability. Maybe this should be a commandline parameter -# since it might differ from release to release. -release_stability = 'stable' diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_AlreadySigned.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_AlreadySigned.html deleted file mode 100644 index 20084d45c..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_AlreadySigned.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_AlreadySigned - - - - -
-

Class Auth_OpenID_AlreadySigned

- - -
-
Description
- -
- -

An error that indicates that a response was already signed.

-

- Located in /Auth/OpenID/Server.php (line 1193) -

- - -
Auth_OpenID_EncodingError
-   |
-   --Auth_OpenID_AlreadySigned
- -
-
- - - - - - - -
-
Methods
- -
- -

Inherited Methods

- - -

Inherited From Auth_OpenID_EncodingError

-
- Auth_OpenID_EncodingError::Auth_OpenID_EncodingError()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Association.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Association.html deleted file mode 100644 index 275babbfa..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Association.html +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_Association - - - - -
-

Class Auth_OpenID_Association

- - -
-
Description
- -
- -

This class represents an association between a server and a consumer. In general, users of this library will never see instances of this object. The only exception is if you implement a custom Auth_OpenID_OpenIDStore.

-

If you do implement such a store, it will need to store the values of the handle, secret, issued, lifetime, and assoc_type instance variables.

-

- Located in /Auth/OpenID/Association.php (line 39) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_Association - deserialize - ( $class_name, string $assoc_s) -
- -
- bool - equal - ( $other) -
- -
- integer - getExpiresIn - ([ $now = null]) -
- -
- string - serialize - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- deserialize (line 198) -
- - -

Parse an association as stored by serialize(). This is the inverse of serialize.

-
    -
  • return: instance of this class
  • -
- -
- Auth_OpenID_Association - - deserialize - - ( $class_name, string $assoc_s) -
- -
    -
  • - string - $assoc_s: Association as serialized by serialize()
  • -
  • - - $class_name
  • -
- - -
- -
- -
- equal (line 159) -
- - -

This checks to see if two Auth_OpenID_Association instances represent the same association.

-
    -
  • return: true if the two instances represent the same association, false otherwise.
  • -
- -
- bool - - equal - - ( $other) -
- -
    -
  • - - $other
  • -
- - -
- -
- -
- getExpiresIn (line 143) -
- - -

This returns the number of seconds this association is still valid for, or 0 if the association is no longer valid.

-
    -
  • return: The number of seconds this association is still valid for, or 0 if the association is no longer valid.
  • -
- -
- integer - - getExpiresIn - - ([ $now = null]) -
- -
    -
  • - - $now
  • -
- - -
- -
- -
- serialize (line 175) -
- - -

Convert an association to KV form.

-
    -
  • return: String in KV form suitable for deserialization by deserialize.
  • -
- -
- string - - serialize - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:27 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_AuthRequest.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_AuthRequest.html deleted file mode 100644 index 3bf8f4a03..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_AuthRequest.html +++ /dev/null @@ -1,187 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_AuthRequest - - - - -
-

Class Auth_OpenID_AuthRequest

- - -
-
Description
- -
- -

This class represents an authentication request from a consumer to an OpenID server.

-

- Located in /Auth/OpenID/Consumer.php (line 934) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_AuthRequest - Auth_OpenID_AuthRequest - ( $assoc,  $endpoint) -
- -
- void - addExtensionArg - (string $namespace, string $key, string $value) -
- -
- string - redirectURL - (string $trust_root, string$ $return_to, [ $immediate = false]) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_AuthRequest (line 944) -
- - -

Initialize an authentication request with the specified token, association, and endpoint.

-

Users of this library should not create instances of this class. Instances of this class are created by the library when needed.

- -
- Auth_OpenID_AuthRequest - - Auth_OpenID_AuthRequest - - ( $assoc,  $endpoint) -
- -
    -
  • - - $assoc
  • -
  • - - $endpoint
  • -
- - -
- -
- -
- addExtensionArg (line 971) -
- - -

Add an extension argument to this OpenID authentication request.

-

Use caution when adding arguments, because they will be URL-escaped and appended to the redirect URL, which can easily get quite long.

- -
- void - - addExtensionArg - - (string $namespace, string $key, string $value) -
- -
    -
  • - string - $namespace: The namespace for the extension. For example, the simple registration extension uses the namespace 'sreg'.
  • -
  • - string - $key: The key within the extension namespace. For example, the nickname field in the simple registration extension's key is 'nickname'.
  • -
  • - string - $value: The value to provide to the server for this argument.
  • -
- - -
- -
- -
- redirectURL (line 990) -
- - -

Compute the appropriate redirection URL for this request based on a specified trust root and return-to.

-
    -
  • return: The resulting redirect URL that you should send to the user agent.
  • -
- -
- string - - redirectURL - - (string $trust_root, string$ $return_to, [ $immediate = false]) -
- -
    -
  • - string - $trust_root: The trust root URI for your application.
  • -
  • - string$ - $return_to: The return-to URL to be used when the OpenID server redirects the user back to your site.
  • -
  • - - $immediate
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:27 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_CancelResponse.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_CancelResponse.html deleted file mode 100644 index 2b0df54ce..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_CancelResponse.html +++ /dev/null @@ -1,169 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_CancelResponse - - - - -
-

Class Auth_OpenID_CancelResponse

- - -
-
Description
- -
- -

A response with a status of Auth_OpenID_CANCEL. Indicates that the user cancelled the OpenID authentication request. This has two relevant attributes:

-

identity_url - The identity URL for which authentication was attempted, if it can be determined. Otherwise, null.

status - Auth_OpenID_SUCCESS.

-

- Located in /Auth/OpenID/Consumer.php (line 1147) -

- - -
Auth_OpenID_ConsumerResponse
-   |
-   --Auth_OpenID_CancelResponse
- -
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $status -
-
-
-
- - -
-
Method Summary
- -
-
- -
- Auth_OpenID_CancelResponse - Auth_OpenID_CancelResponse - ( $endpoint) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $status - = Auth_OpenID_CANCEL (line 1148) - -
- - - - -
-
Redefinition of:
-
-
Auth_OpenID_ConsumerResponse::$status
-
- - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_CancelResponse (line 1150) -
- - - -
- Auth_OpenID_CancelResponse - - Auth_OpenID_CancelResponse - - ( $endpoint) -
- -
    -
  • - - $endpoint
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Consumer.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Consumer.html deleted file mode 100644 index 93cffc1e7..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Consumer.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_Consumer - - - - -
-

Class Auth_OpenID_Consumer

- - -
-
Description
- -
- -

An OpenID consumer implementation that performs discovery and does session management. See the Consumer.php file documentation for more information.

-

- Located in /Auth/OpenID/Consumer.php (line 222) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_Consumer - Auth_OpenID_Consumer - ( &$store, [mixed $session = null], Auth_OpenID_OpenIDStore $store) -
- -
- Auth_OpenID_AuthRequest - begin - (User_url: $user_url) -
- -
- Auth_OpenID_AuthRequest - &beginWithoutDiscovery - (Auth_OpenID_ServiceEndpoint $endpoint) -
- -
- Auth_OpenID_ConsumerResponse - complete - (array $query) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_Consumer (line 259) -
- - -

Initialize a Consumer instance.

-

You should create a new instance of the Consumer object with every HTTP request that handles OpenID transactions.

- -
- Auth_OpenID_Consumer - - Auth_OpenID_Consumer - - ( &$store, [mixed $session = null], Auth_OpenID_OpenIDStore $store) -
- -
    -
  • - Auth_OpenID_OpenIDStore - $store: This must be an object that implements the interface in Auth_OpenID_OpenIDStore. Several concrete implementations are provided, to cover most common use cases. For stores backed by MySQL, PostgreSQL, or SQLite, see the Auth_OpenID_SQLStore class and its sublcasses. For a filesystem-backed store, see the Auth_OpenID_FileStore module. As a last resort, if it isn't possible for the server to store state at all, an instance of Auth_OpenID_DumbStore can be used.
  • -
  • - mixed - $session: session An object which implements the interface of the Services_Yadis_Session class. Particularly, this object is expected to have these methods: get($key), set($key, $value), and del($key). This defaults to a session object which wraps PHP's native session machinery. You should only need to pass something here if you have your own sessioning implementation.
  • -
  • - - &$store
  • -
- - -
- -
- -
- begin (line 287) -
- - -

Start the OpenID authentication process. See steps 1-2 in the overview at the top of this file.

-
    -
  • return: An object containing the discovered information will be returned, with a method for building a redirect URL to the server, as described in step 3 of the overview. This object may also be used to add extension arguments to the request, using its 'addExtensionArg' method.
  • -
- -
- Auth_OpenID_AuthRequest - - begin - - (User_url: $user_url) -
- -
    -
  • - User_url: - $user_url: Identity URL given by the user. This method performs a textual transformation of the URL to try and make sure it is normalized. For example, a user_url of example.com will be normalized to http://example.com/ normalizing and resolving any redirects the server might issue.
  • -
- - -
- -
- -
- beginWithoutDiscovery (line 350) -
- - -

Start OpenID verification without doing OpenID server

-

discovery. This method is used internally by Consumer.begin after discovery is performed, and exists to provide an interface for library users needing to perform their own discovery.

-
    -
  • return: An OpenID authentication request object.
  • -
- -
- Auth_OpenID_AuthRequest - - &beginWithoutDiscovery - - (Auth_OpenID_ServiceEndpoint $endpoint) -
- -
    -
  • - Auth_OpenID_ServiceEndpoint - $endpoint: an OpenID service endpoint descriptor.
  • -
- - -
- -
- -
- complete (line 372) -
- - -

Called to interpret the server's response to an OpenID request. It is called in step 4 of the flow described in the consumer overview.

-
    -
  • return: A instance of an Auth_OpenID_ConsumerResponse subclass. The type of response is indicated by the status attribute, which will be one of SUCCESS, CANCEL, FAILURE, or SETUP_NEEDED.
  • -
- -
- Auth_OpenID_ConsumerResponse - - complete - - (array $query) -
- -
    -
  • - array - $query: An array of the query parameters (key => value pairs) for this HTTP request.
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ConsumerResponse.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ConsumerResponse.html deleted file mode 100644 index 91d094ca5..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ConsumerResponse.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_ConsumerResponse - - - - -
-

Class Auth_OpenID_ConsumerResponse

- - -
-
Description
- -
- -

The base class for responses from the Auth_OpenID_Consumer.

-

- Located in /Auth/OpenID/Consumer.php (line 1022) -

- - -

-	
-			
-
- - -
-
Direct descendents
- -
- - - - - - - - - - - - - - - - - - - - - -
ClassDescription
Auth_OpenID_SuccessResponse - A response with a status of Auth_OpenID_SUCCESS. Indicates that -
Auth_OpenID_FailureResponse - A response with a status of Auth_OpenID_FAILURE. Indicates that the OpenID protocol has failed. This could be locally or remotely triggered. This has three relevant attributes: -
Auth_OpenID_CancelResponse - A response with a status of Auth_OpenID_CANCEL. Indicates that the user cancelled the OpenID authentication request. This has two relevant attributes: -
Auth_OpenID_SetupNeededResponse - A response with a status of Auth_OpenID_SETUP_NEEDED. Indicates that the request was in immediate mode, and the server is unable to authenticate the user without further interaction. -
-
-
- - - -
-
Variable Summary
- -
-
-
- mixed - $status -
-
-
-
- - - -
-
Variables
- -
- - -
- -
- - mixed - $status - = null (line 1023) - -
- - - - - -
-
Redefined in descendants as:
- - - -
- -
-
- - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DatabaseConnection.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DatabaseConnection.html deleted file mode 100644 index afebb38a5..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DatabaseConnection.html +++ /dev/null @@ -1,337 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_DatabaseConnection - - - - -
-

Class Auth_OpenID_DatabaseConnection

- - -
-
Description
- -
- -

An empty base class intended to emulate PEAR connection

-

functionality in applications that supply their own database abstraction mechanisms. See Auth_OpenID_SQLStore for more information. You should subclass this class if you need to create an SQL store that needs to access its database using an application's database abstraction layer instead of a PEAR database connection. Any subclass of Auth_OpenID_DatabaseConnection MUST adhere to the interface specified here.

-

- Located in /Auth/OpenID/DatabaseConnection.php (line 25) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- void - autoCommit - (bool $mode) -
- -
- void - begin - () -
- -
- void - commit - () -
- -
- array - getAll - (string $sql, [array $params = array()]) -
- -
- mixed - getOne - (string $sql, [array $params = array()]) -
- -
- array - getRow - (string $sql, [array $params = array()]) -
- -
- mixed - query - (string $sql, [array $params = array()]) -
- -
- void - rollback - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- autoCommit (line 32) -
- - -

Sets auto-commit mode on this database connection.

- -
- void - - autoCommit - - (bool $mode) -
- -
    -
  • - bool - $mode: True if auto-commit is to be used; false if not.
  • -
- - -
- -
- -
- begin (line 58) -
- - -

Starts a transaction on this connection, if supported.

- -
- void - - begin - - () -
- - - -
- -
- -
- commit (line 65) -
- - -

Commits a transaction on this connection, if supported.

- -
- void - - commit - - () -
- - - -
- -
- -
- getAll (line 126) -
- - -

Run an SQL query with the specified parameters, if any.

-
    -
  • return: An array of arrays representing the result of the query; each array is keyed on column name.
  • -
- -
- array - - getAll - - (string $sql, [array $params = array()]) -
- -
    -
  • - string - $sql: An SQL string with placeholders. The placeholders are assumed to be specific to the database engine for this connection.
  • -
  • - array - $params: An array of parameters to insert into the SQL string using this connection's escaping mechanism.
  • -
- - -
- -
- -
- getOne (line 91) -
- - -

Run an SQL query and return the first column of the first row of the result set, if any.

-
    -
  • return: The value of the first column of the first row of the result set. False if no such result was found.
  • -
- -
- mixed - - getOne - - (string $sql, [array $params = array()]) -
- -
    -
  • - string - $sql: An SQL string with placeholders. The placeholders are assumed to be specific to the database engine for this connection.
  • -
  • - array - $params: An array of parameters to insert into the SQL string using this connection's escaping mechanism.
  • -
- - -
- -
- -
- getRow (line 109) -
- - -

Run an SQL query and return the first row of the result set, if any.

-
    -
  • return: The first row of the result set, if any, keyed on column name. False if no such result was found.
  • -
- -
- array - - getRow - - (string $sql, [array $params = array()]) -
- -
    -
  • - string - $sql: An SQL string with placeholders. The placeholders are assumed to be specific to the database engine for this connection.
  • -
  • - array - $params: An array of parameters to insert into the SQL string using this connection's escaping mechanism.
  • -
- - -
- -
- -
- query (line 51) -
- - -

Run an SQL query with the specified parameters, if any.

-
    -
  • return: The result of calling this connection's internal query function. The type of result depends on the underlying database engine. This method is usually used when the result of a query is not important, like a DDL query.
  • -
- -
- mixed - - query - - (string $sql, [array $params = array()]) -
- -
    -
  • - string - $sql: An SQL string with placeholders. The placeholders are assumed to be specific to the database engine for this connection.
  • -
  • - array - $params: An array of parameters to insert into the SQL string using this connection's escaping mechanism.
  • -
- - -
- -
- -
- rollback (line 72) -
- - -

Performs a rollback on this connection, if supported.

- -
- void - - rollback - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Decoder.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Decoder.html deleted file mode 100644 index 86a69fe79..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Decoder.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_Decoder - - - - -
-

Class Auth_OpenID_Decoder

- - -
-
Description
- -
- -

Decode an incoming Auth_OpenID_WebResponse into an Auth_OpenID_Request.

-

- Located in /Auth/OpenID/Server.php (line 1114) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_Decoder - Auth_OpenID_Decoder - () -
- -
- void - decode - ( $query) -
- -
- void - defaultDecoder - ( $query) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_Decoder (line 1116) -
- - - -
- Auth_OpenID_Decoder - - Auth_OpenID_Decoder - - () -
- - - -
- -
- -
- decode (line 1133) -
- - -

Given an HTTP query in an array (key-value pairs), decode it into an Auth_OpenID_Request object.

- -
- void - - decode - - ( $query) -
- -
    -
  • - - $query
  • -
- - -
- -
- -
- defaultDecoder (line 1168) -
- - - -
- void - - defaultDecoder - - ( $query) -
- -
    -
  • - - $query
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DiffieHellmanConsumerSession.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DiffieHellmanConsumerSession.html deleted file mode 100644 index a6d16f343..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DiffieHellmanConsumerSession.html +++ /dev/null @@ -1,217 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_DiffieHellmanConsumerSession - - - - -
-

Class Auth_OpenID_DiffieHellmanConsumerSession

- - -
-
Description
- -
- -

- Located in /Auth/OpenID/Consumer.php (line 403) -

- - -

-	
-			
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $session_type -
-
-
-
- - -
-
Method Summary
- -
-
- -
- Auth_OpenID_DiffieHellmanConsumerSession - Auth_OpenID_DiffieHellmanConsumerSession - ([ $dh = null]) -
- -
- void - extractSecret - ( $response) -
- -
- void - getRequest - () -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $session_type - = 'DH-SHA1' (line 404) - -
- - - - - - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_DiffieHellmanConsumerSession (line 406) -
- - - -
- Auth_OpenID_DiffieHellmanConsumerSession - - Auth_OpenID_DiffieHellmanConsumerSession - - ([ $dh = null]) -
- -
    -
  • - - $dh
  • -
- - -
- -
- -
- extractSecret (line 434) -
- - - -
- void - - extractSecret - - ( $response) -
- -
    -
  • - - $response
  • -
- - -
- -
- -
- getRequest (line 415) -
- - - -
- void - - getRequest - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DiffieHellmanServerSession.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DiffieHellmanServerSession.html deleted file mode 100644 index 49afdb76e..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DiffieHellmanServerSession.html +++ /dev/null @@ -1,226 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_DiffieHellmanServerSession - - - - -
-

Class Auth_OpenID_DiffieHellmanServerSession

- - -
-
Description
- -
- -

- Located in /Auth/OpenID/Server.php (line 391) -

- - -

-	
-			
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $session_type -
-
-
-
- - -
-
Method Summary
- -
-
- -
- Auth_OpenID_DiffieHellmanServerSession - Auth_OpenID_DiffieHellmanServerSession - ( $dh,  $consumer_pubkey) -
- -
- void - answer - ( $secret) -
- -
- void - fromQuery - ( $query) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $session_type - = 'DH-SHA1' (line 397) - -
- - -

An object that knows how to handle association requests with the Diffie-Hellman session type.

- - - - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_DiffieHellmanServerSession (line 399) -
- - - -
- Auth_OpenID_DiffieHellmanServerSession - - Auth_OpenID_DiffieHellmanServerSession - - ( $dh,  $consumer_pubkey) -
- -
    -
  • - - $dh
  • -
  • - - $consumer_pubkey
  • -
- - -
- -
- -
- answer (line 460) -
- - - -
- void - - answer - - ( $secret) -
- -
    -
  • - - $secret
  • -
- - -
- -
- -
- fromQuery (line 405) -
- - - -
- void - - fromQuery - - ( $query) -
- -
    -
  • - - $query
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DumbStore.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DumbStore.html deleted file mode 100644 index 793a48090..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_DumbStore.html +++ /dev/null @@ -1,419 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_DumbStore - - - - -
-

Class Auth_OpenID_DumbStore

- - -
-
Description
- -
- -

This is a store for use in the worst case, when you have no way of saving state on the consumer site. Using this store makes the consumer vulnerable to replay attacks, as it's unable to use nonces. Avoid using this store if it is at all possible.

-

Most of the methods of this class are implementation details. Users of this class need to worry only about the constructor.

- -

- Located in /Auth/OpenID/DumbStore.php (line 34) -

- - -
Auth_OpenID_OpenIDStore
-   |
-   --Auth_OpenID_DumbStore
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_DumbStore - Auth_OpenID_DumbStore - (string $secret_phrase) -
- -
- void - getAssociation - ( $server_url, [ $handle = null]) -
- -
- void - getAuthKey - () -
- -
- void - isDumb - () -
- -
- void - removeAssociation - ( $server_url,  $handle) -
- -
- void - storeAssociation - ( $server_url,  $association) -
- -
- void - storeNonce - ( $nonce) -
- -
- void - useNonce - ( $nonce) -
-
-
-
- - -
-
Variables
- -
- -

Inherited Variables

- -

Inherited from Auth_OpenID_OpenIDStore

-
- - Auth_OpenID_OpenIDStore::$AUTH_KEY_LEN
-
-
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_DumbStore (line 53) -
- - -

Creates a new Auth_OpenID_DumbStore instance. For the security of the tokens generated by the library, this class attempts to at least have a secure implementation of getAuthKey.

-

When you create an instance of this class, pass in a secret phrase. The phrase is hashed with sha1 to make it the correct length and form for an auth key. That allows you to use a long string as the secret phrase, which means you can make it very difficult to guess.

Each Auth_OpenID_DumbStore instance that is created for use by your consumer site needs to use the same $secret_phrase.

- -
- Auth_OpenID_DumbStore - - Auth_OpenID_DumbStore - - (string $secret_phrase) -
- -
    -
  • - string - $secret_phrase: secret_phrase The phrase used to create the auth key returned by getAuthKey
  • -
- - -
- -
- -
- getAssociation (line 68) -
- - -

This implementation always returns null.

- -
- void - - getAssociation - - ( $server_url, [ $handle = null]) -
- -
    -
  • - - $server_url
  • -
  • - - $handle
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::getAssociation()
-
This method returns an Association object from storage that matches the server URL and, if specified, handle. It returns null if no such association is found or if the matching association is expired.
-
- -
- -
- -
- getAuthKey (line 101) -
- - -

This method returns the auth key generated by the constructor.

- -
- void - - getAuthKey - - () -
- - -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::getAuthKey()
-
This method returns a key used to sign the tokens, to ensure that they haven't been tampered with in transit. It should return the same key every time it is called. The key returned should be AUTH_KEY_LEN bytes long.
-
- -
- -
- -
- isDumb (line 110) -
- - -

This store is a dumb mode store, so this method is overridden to return true.

- -
- void - - isDumb - - () -
- - -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::isDumb()
-
This method must return true if the store is a dumb-mode-style store. Unlike all other methods in this class, this one provides a default implementation, which returns false.
-
- -
- -
- -
- removeAssociation (line 76) -
- - -

This implementation always returns false.

- -
- void - - removeAssociation - - ( $server_url,  $handle) -
- -
    -
  • - - $server_url
  • -
  • - - $handle
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::removeAssociation()
-
This method removes the matching association if it's found, and returns whether the association was removed or not.
-
- -
- -
- -
- storeAssociation (line 61) -
- - -

This implementation does nothing.

- -
- void - - storeAssociation - - ( $server_url,  $association) -
- -
    -
  • - - $server_url
  • -
  • - - $association
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::storeAssociation()
-
This method puts an Association object into storage, retrievable by server URL and handle.
-
- -
- -
- -
- storeNonce (line 84) -
- - -

This implementation does nothing.

- -
- void - - storeNonce - - ( $nonce) -
- -
    -
  • - - $nonce
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::storeNonce()
-
Stores a nonce. This is used by the consumer to prevent replay attacks.
-
- -
- -
- -
- useNonce (line 93) -
- - -

In a system truly limited to dumb mode, nonces must all be accepted. This therefore always returns true, which makes replay attacks feasible.

- -
- void - - useNonce - - ( $nonce) -
- -
    -
  • - - $nonce
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::useNonce()
-
This method is called when the library is attempting to use a nonce. If the nonce is in the store, this method removes it and returns a value which evaluates as true. Otherwise it returns a value which evaluates as false.
-
- -
-

Inherited Methods

- - -

Inherited From Auth_OpenID_OpenIDStore

-
- Auth_OpenID_OpenIDStore::getAssociation()
- Auth_OpenID_OpenIDStore::getAuthKey()
- Auth_OpenID_OpenIDStore::isDumb()
- Auth_OpenID_OpenIDStore::removeAssociation()
- Auth_OpenID_OpenIDStore::reset()
- Auth_OpenID_OpenIDStore::storeAssociation()
- Auth_OpenID_OpenIDStore::storeNonce()
- Auth_OpenID_OpenIDStore::useNonce()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Encoder.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Encoder.html deleted file mode 100644 index 86c9b838a..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Encoder.html +++ /dev/null @@ -1,200 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_Encoder - - - - -
-

Class Auth_OpenID_Encoder

- - -
-
Description
- -
- -

Encode an Auth_OpenID_Response to an Auth_OpenID_WebResponse.

-

- Located in /Auth/OpenID/Server.php (line 1028) -

- - -

-	
-			
-
- - -
-
Direct descendents
- -
- - - - - - - - - -
ClassDescription
Auth_OpenID_SigningEncoder - An encoder which also takes care of signing fields when required. -
-
-
- - - -
-
Variable Summary
- -
-
-
- mixed - $responseFactory -
-
-
-
- - -
-
Method Summary
- -
-
- -
- void - encode - ( &$response) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $responseFactory - = 'Auth_OpenID_WebResponse' (line 1030) - -
- - - - - - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- encode (line 1036) -
- - -

Encode an Auth_OpenID_Response and return an Auth_OpenID_WebResponse.

- -
- void - - encode - - ( &$response) -
- -
    -
  • - - &$response
  • -
- - -
-
Redefined in descendants as:
- -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_EncodingError.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_EncodingError.html deleted file mode 100644 index 38a99d2b2..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_EncodingError.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_EncodingError - - - - -
-

Class Auth_OpenID_EncodingError

- - -
-
Description
- -
- -

An error that indicates an encoding problem occurred.

-

- Located in /Auth/OpenID/Server.php (line 1181) -

- - -

-	
-			
-
- - -
-
Direct descendents
- -
- - - - - - - - - -
ClassDescription
Auth_OpenID_AlreadySigned - An error that indicates that a response was already signed. -
-
-
- - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_EncodingError - Auth_OpenID_EncodingError - ( &$response) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_EncodingError (line 1182) -
- - - -
- Auth_OpenID_EncodingError - - Auth_OpenID_EncodingError - - ( &$response) -
- -
    -
  • - - &$response
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_FailureResponse.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_FailureResponse.html deleted file mode 100644 index 631ee84e7..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_FailureResponse.html +++ /dev/null @@ -1,172 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_FailureResponse - - - - -
-

Class Auth_OpenID_FailureResponse

- - -
-
Description
- -
- -

A response with a status of Auth_OpenID_FAILURE. Indicates that the OpenID protocol has failed. This could be locally or remotely triggered. This has three relevant attributes:

-

identity_url - The identity URL for which authentication was attempted, if it can be determined. Otherwise, null.

message - A message indicating why the request failed, if one is supplied. Otherwise, null.

status - Auth_OpenID_FAILURE.

-

- Located in /Auth/OpenID/Consumer.php (line 1120) -

- - -
Auth_OpenID_ConsumerResponse
-   |
-   --Auth_OpenID_FailureResponse
- -
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $status -
-
-
-
- - -
-
Method Summary
- -
-
- -
- Auth_OpenID_FailureResponse - Auth_OpenID_FailureResponse - ( $endpoint, [ $message = null]) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $status - = Auth_OpenID_FAILURE (line 1121) - -
- - - - -
-
Redefinition of:
-
-
Auth_OpenID_ConsumerResponse::$status
-
- - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_FailureResponse (line 1123) -
- - - -
- Auth_OpenID_FailureResponse - - Auth_OpenID_FailureResponse - - ( $endpoint, [ $message = null]) -
- -
    -
  • - - $endpoint
  • -
  • - - $message
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_FileStore.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_FileStore.html deleted file mode 100644 index db88e53b3..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_FileStore.html +++ /dev/null @@ -1,528 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_FileStore - - - - -
-

Class Auth_OpenID_FileStore

- - -
-
Description
- -
- -

This is a filesystem-based store for OpenID associations and

-

nonces. This store should be safe for use in concurrent systems on both windows and unix (excluding NFS filesystems). There are a couple race conditions in the system, but those failure cases have been set up in such a way that the worst-case behavior is someone having to try to log in a second time.

Most of the methods of this class are implementation details. People wishing to just use this store need only pay attention to the constructor.

- -

- Located in /Auth/OpenID/FileStore.php (line 39) -

- - -
Auth_OpenID_OpenIDStore
-   |
-   --Auth_OpenID_FileStore
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_FileStore - Auth_OpenID_FileStore - (string $directory) -
- -
- void - clean - () -
- -
- string - createAuthKey - () -
- -
- void - destroy - () -
- -
- mixed - getAssociation - ( $server_url, [ $handle = null]) -
- -
- string - getAssociationFilename - ( $server_url,  $handle) -
- -
- string - getAuthKey - () -
- -
- mixed - readAuthKey - () -
- -
- bool - removeAssociation - ( $server_url,  $handle) -
- -
- void - storeAssociation - ( $server_url,  $association) -
- -
- void - storeNonce - ( $nonce) -
- -
- bool - useNonce - ( $nonce) -
-
-
-
- - -
-
Variables
- -
- -

Inherited Variables

- -

Inherited from Auth_OpenID_OpenIDStore

-
- - Auth_OpenID_OpenIDStore::$AUTH_KEY_LEN
-
-
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_FileStore (line 49) -
- - -

Initializes a new Auth_OpenID_FileStore. This initializes the nonce and association directories, which are subdirectories of the directory passed in.

- -
- Auth_OpenID_FileStore - - Auth_OpenID_FileStore - - (string $directory) -
- -
    -
  • - string - $directory: This is the directory to put the store directories in.
  • -
- - -
- -
- -
- clean (line 486) -
- - -

Remove expired entries from the database. This is potentially expensive, so only run when it is acceptable to take time.

- -
- void - - clean - - () -
- - - -
- -
- -
- createAuthKey (line 152) -
- - -

Generate a new random auth key and safely store it in the location specified by $this->auth_key_name.

- -
- string - - createAuthKey - - () -
- - - -
- -
- -
- destroy (line 79) -
- - - -
- void - - destroy - - () -
- - - -
- -
- -
- getAssociation (line 306) -
- - -

Retrieve an association. If no handle is specified, return the association with the most recent issue time.

- -
- mixed - - getAssociation - - ( $server_url, [ $handle = null]) -
- -
    -
  • - - $server_url
  • -
  • - - $handle
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::getAssociation()
-
This method returns an Association object from storage that matches the server URL and, if specified, handle. It returns null if no such association is found or if the matching association is expired.
-
- -
- -
- -
- getAssociationFilename (line 224) -
- - -

Create a unique filename for a given server url and

-

handle. This implementation does not assume anything about the format of the handle. The filename that is returned will contain the domain name from the server URL for ease of human inspection of the data directory.

- -
- string - - getAssociationFilename - - ( $server_url,  $handle) -
- -
    -
  • - - $server_url
  • -
  • - - $handle
  • -
- - -
- -
- -
- getAuthKey (line 192) -
- - -

Retrieve the auth key from the file specified by $this->auth_key_name, creating it if it does not exist.

- -
- string - - getAuthKey - - () -
- - -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::getAuthKey()
-
This method returns a key used to sign the tokens, to ensure that they haven't been tampered with in transit. It should return the same key every time it is called. The key returned should be AUTH_KEY_LEN bytes long.
-
- -
- -
- -
- readAuthKey (line 128) -
- - -

Read the auth key from the auth key file. Will return None if there is currently no key.

- -
- mixed - - readAuthKey - - () -
- - - -
- -
- -
- removeAssociation (line 413) -
- - -

Remove an association if it exists. Do nothing if it does not.

- -
- bool - - removeAssociation - - ( $server_url,  $handle) -
- -
    -
  • - - $server_url
  • -
  • - - $handle
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::removeAssociation()
-
This method removes the matching association if it's found, and returns whether the association was removed or not.
-
- -
- -
- -
- storeAssociation (line 256) -
- - -

Store an association in the association directory.

- -
- void - - storeAssociation - - ( $server_url,  $association) -
- -
    -
  • - - $server_url
  • -
  • - - $association
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::storeAssociation()
-
This method puts an Association object into storage, retrievable by server URL and handle.
-
- -
- -
- -
- storeNonce (line 432) -
- - -

Mark this nonce as present.

- -
- void - - storeNonce - - ( $nonce) -
- -
    -
  • - - $nonce
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::storeNonce()
-
Stores a nonce. This is used by the consumer to prevent replay attacks.
-
- -
- -
- -
- useNonce (line 454) -
- - -

Return whether this nonce is present. As a side effect, mark it as no longer present.

- -
- bool - - useNonce - - ( $nonce) -
- -
    -
  • - - $nonce
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::useNonce()
-
This method is called when the library is attempting to use a nonce. If the nonce is in the store, this method removes it and returns a value which evaluates as true. Otherwise it returns a value which evaluates as false.
-
- -
-

Inherited Methods

- - -

Inherited From Auth_OpenID_OpenIDStore

-
- Auth_OpenID_OpenIDStore::getAssociation()
- Auth_OpenID_OpenIDStore::getAuthKey()
- Auth_OpenID_OpenIDStore::isDumb()
- Auth_OpenID_OpenIDStore::removeAssociation()
- Auth_OpenID_OpenIDStore::reset()
- Auth_OpenID_OpenIDStore::storeAssociation()
- Auth_OpenID_OpenIDStore::storeNonce()
- Auth_OpenID_OpenIDStore::useNonce()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MalformedReturnURL.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MalformedReturnURL.html deleted file mode 100644 index aca26bf51..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MalformedReturnURL.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_MalformedReturnURL - - - - -
-

Class Auth_OpenID_MalformedReturnURL

- - -
-
Description
- -
- -

An error indicating that the return_to URL is malformed.

-

- Located in /Auth/OpenID/Server.php (line 249) -

- - -
Auth_OpenID_ServerError
-   |
-   --Auth_OpenID_MalformedReturnURL
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_MalformedReturnURL - Auth_OpenID_MalformedReturnURL - ( $query,  $return_to) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_MalformedReturnURL (line 250) -
- - - -
- Auth_OpenID_MalformedReturnURL - - Auth_OpenID_MalformedReturnURL - - ( $query,  $return_to) -
- -
    -
  • - - $query
  • -
  • - - $return_to
  • -
- - -
-

Inherited Methods

- - -

Inherited From Auth_OpenID_ServerError

-
- Auth_OpenID_ServerError::encodeToKVForm()
- Auth_OpenID_ServerError::encodeToURL()
- Auth_OpenID_ServerError::hasReturnTo()
- Auth_OpenID_ServerError::toString()
- Auth_OpenID_ServerError::whichEncoding()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MalformedTrustRoot.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MalformedTrustRoot.html deleted file mode 100644 index 2aa34ef2b..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MalformedTrustRoot.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_MalformedTrustRoot - - - - -
-

Class Auth_OpenID_MalformedTrustRoot

- - -
-
Description
- -
- -

This error is returned when the trust_root value is malformed.

-

- Located in /Auth/OpenID/Server.php (line 262) -

- - -
Auth_OpenID_ServerError
-   |
-   --Auth_OpenID_MalformedTrustRoot
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- void - toString - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- toString (line 263) -
- - - -
- void - - toString - - () -
- - -
-
Redefinition of:
-
-
Auth_OpenID_ServerError::toString()
-
Returns this error message.
-
- -
-

Inherited Methods

- - -

Inherited From Auth_OpenID_ServerError

-
- Auth_OpenID_ServerError::encodeToKVForm()
- Auth_OpenID_ServerError::encodeToURL()
- Auth_OpenID_ServerError::hasReturnTo()
- Auth_OpenID_ServerError::toString()
- Auth_OpenID_ServerError::whichEncoding()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MySQLStore.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MySQLStore.html deleted file mode 100644 index 33ed8d24a..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_MySQLStore.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_MySQLStore - - - - -
-

Class Auth_OpenID_MySQLStore

- - -
-
Description
- -
- -

An SQL store that uses MySQL as its backend.

- -

- Located in /Auth/OpenID/MySQLStore.php (line 19) -

- - -
Auth_OpenID_OpenIDStore
-   |
-   --Auth_OpenID_SQLStore
-      |
-      --Auth_OpenID_MySQLStore
- -
-
- - - - - - -
-
Variables
- -
- -

Inherited Variables

- -

Inherited from Auth_OpenID_OpenIDStore

-
- - Auth_OpenID_OpenIDStore::$AUTH_KEY_LEN
-
-
- -
-
- - - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_OpenIDStore.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_OpenIDStore.html deleted file mode 100644 index 819185451..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_OpenIDStore.html +++ /dev/null @@ -1,550 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_OpenIDStore - - - - -
-

Class Auth_OpenID_OpenIDStore

- - -
-
Description
- -
- -

This is the interface for the store objects the OpenID library

-

uses. It is a single class that provides all of the persistence mechanisms that the OpenID library needs, for both servers and consumers. If you want to create an SQL-driven store, please see then Auth_OpenID_SQLStore class.

- -

- Located in /Auth/OpenID/Interface.php (line 26) -

- - -

-	
-			
-
- - -
-
Direct descendents
- -
- - - - - - - - - - - - - - - - - -
ClassDescription
Auth_OpenID_DumbStore - This is a store for use in the worst case, when you have no way of saving state on the consumer site. Using this store makes the consumer vulnerable to replay attacks, as it's unable to use nonces. Avoid using this store if it is at all possible. -
Auth_OpenID_FileStore - This is a filesystem-based store for OpenID associations and -
Auth_OpenID_SQLStore - This is the parent class for the SQL stores, which contains the logic common to all of the SQL stores. -
-
-
- - - -
-
Variable Summary
- -
-
-
- integer - $AUTH_KEY_LEN -
-
-
-
- - -
-
Method Summary
- -
-
- -
- Association - getAssociation - (string $server_url, [mixed $handle = null]) -
- -
- string - getAuthKey - () -
- -
- bool - isDumb - () -
- -
- mixed - removeAssociation - (string $server_url, string $handle) -
- -
- void - reset - () -
- -
- void - storeAssociation - (string $server_url, Association $association) -
- -
- null - storeNonce - (string $nonce) -
- -
- bool - useNonce - (string $nonce) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - integer - $AUTH_KEY_LEN - = 20 (line 31) - -
- - -
    -
  • var: The length of the auth key that should be returned by the getAuthKey method.
  • -
- - - - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- getAssociation (line 82) -
- - -

This method returns an Association object from storage that matches the server URL and, if specified, handle. It returns null if no such association is found or if the matching association is expired.

-

If no handle is specified, the store may return any association which matches the server URL. If multiple associations are valid, the recommended return value for this method is the one that will remain valid for the longest duration.

This method is allowed (and encouraged) to garbage collect expired associations when found. This method must not return expired associations.

-
    -
  • return: The Association for the given identity server.
  • -
- -
- Association - - getAssociation - - (string $server_url, [mixed $handle = null]) -
- -
    -
  • - string - $server_url: The URL of the identity server to get the association for. Because of the way the server portion of the library uses this interface, don't assume there are any limitations on the character set of the input string. In particular, expect to see unescaped non-url-safe characters in the server_url field.
  • -
  • - mixed - $handle: This optional parameter is the handle of the specific association to get. If no specific handle is provided, any valid association matching the server URL is returned.
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- getAuthKey (line 157) -
- - -

This method returns a key used to sign the tokens, to ensure that they haven't been tampered with in transit. It should return the same key every time it is called. The key returned should be AUTH_KEY_LEN bytes long.

-
    -
  • return: The key. It should be AUTH_KEY_LEN bytes in length, and use the full range of byte values. That is, it should be treated as a lump of binary data stored in a string.
  • -
- -
- string - - getAuthKey - - () -
- - - -
-
Redefined in descendants as:
- -
- -
- -
- isDumb (line 175) -
- - -

This method must return true if the store is a dumb-mode-style store. Unlike all other methods in this class, this one provides a default implementation, which returns false.

-

In general, any custom subclass of Auth_OpenID_OpenIDStore won't override this method, as custom subclasses are only likely to be created when the store is fully functional.

-
    -
  • return: true if the store works fully, false if the consumer will have to use dumb mode to use this store.
  • -
- -
- bool - - isDumb - - () -
- - - -
-
Redefined in descendants as:
- -
- -
- -
- removeAssociation (line 106) -
- - -

This method removes the matching association if it's found, and returns whether the association was removed or not.

-
    -
  • return: Returns whether or not the given association existed.
  • -
- -
- mixed - - removeAssociation - - (string $server_url, string $handle) -
- -
    -
  • - string - $server_url: The URL of the identity server the association to remove belongs to. Because of the way the server portion of the library uses this interface, don't assume there are any limitations on the character set of the input string. In particular, expect to see unescaped non-url-safe characters in the server_url field.
  • -
  • - string - $handle: This is the handle of the association to remove. If there isn't an association found that matches both the given URL and handle, then there was no matching handle found.
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- reset (line 183) -
- - -

Removes all entries from the store; implementation is optional.

- -
- void - - reset - - () -
- - - -
-
Redefined in descendants as:
- -
- -
- -
- storeAssociation (line 46) -
- - -

This method puts an Association object into storage, retrievable by server URL and handle.

- -
- void - - storeAssociation - - (string $server_url, Association $association) -
- -
    -
  • - string - $server_url: The URL of the identity server that this association is with. Because of the way the server portion of the library uses this interface, don't assume there are any limitations on the character set of the input string. In particular, expect to see unescaped non-url-safe characters in the server_url field.
  • -
  • - Association - $association: The Association to store.
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- storeNonce (line 120) -
- - -

Stores a nonce. This is used by the consumer to prevent replay attacks.

- -
- null - - storeNonce - - (string $nonce) -
- -
    -
  • - string - $nonce: The nonce to store.
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- useNonce (line 141) -
- - -

This method is called when the library is attempting to use a nonce. If the nonce is in the store, this method removes it and returns a value which evaluates as true. Otherwise it returns a value which evaluates as false.

-

This method is allowed and encouraged to treat nonces older than some period (a very conservative window would be 6 hours, for example) as no longer existing, and return False and remove them.

-
    -
  • return: Whether or not the nonce was valid.
  • -
- -
- bool - - useNonce - - (string $nonce) -
- -
    -
  • - string - $nonce: The nonce to use.
  • -
- - -
-
Redefined in descendants as:
- -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PlainTextConsumerSession.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PlainTextConsumerSession.html deleted file mode 100644 index 3c19f48f4..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PlainTextConsumerSession.html +++ /dev/null @@ -1,186 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_PlainTextConsumerSession - - - - -
-

Class Auth_OpenID_PlainTextConsumerSession

- - -
-
Description
- -
- -

- Located in /Auth/OpenID/Consumer.php (line 452) -

- - -

-	
-			
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $session_type -
-
-
-
- - -
-
Method Summary
- -
-
- -
- void - extractSecret - ( $response) -
- -
- void - getRequest - () -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $session_type - = null (line 453) - -
- - - - - - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- extractSecret (line 460) -
- - - -
- void - - extractSecret - - ( $response) -
- -
    -
  • - - $response
  • -
- - -
- -
- -
- getRequest (line 455) -
- - - -
- void - - getRequest - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PlainTextServerSession.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PlainTextServerSession.html deleted file mode 100644 index 7a3b66963..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PlainTextServerSession.html +++ /dev/null @@ -1,192 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_PlainTextServerSession - - - - -
-

Class Auth_OpenID_PlainTextServerSession

- - -
-
Description
- -
- -

- Located in /Auth/OpenID/Server.php (line 373) -

- - -

-	
-			
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $session_type -
-
-
-
- - -
-
Method Summary
- -
-
- -
- void - answer - ( $secret) -
- -
- void - fromQuery - ( $unused_request) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $session_type - = 'plaintext' (line 378) - -
- - -

An object that knows how to handle association requests with no session type.

- - - - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- answer (line 385) -
- - - -
- void - - answer - - ( $secret) -
- -
    -
  • - - $secret
  • -
- - -
- -
- -
- fromQuery (line 380) -
- - - -
- void - - fromQuery - - ( $unused_request) -
- -
    -
  • - - $unused_request
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PostgreSQLStore.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PostgreSQLStore.html deleted file mode 100644 index 33d777f38..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_PostgreSQLStore.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_PostgreSQLStore - - - - -
-

Class Auth_OpenID_PostgreSQLStore

- - -
-
Description
- -
- -

An SQL store that uses PostgreSQL as its backend.

- -

- Located in /Auth/OpenID/PostgreSQLStore.php (line 19) -

- - -
Auth_OpenID_OpenIDStore
-   |
-   --Auth_OpenID_SQLStore
-      |
-      --Auth_OpenID_PostgreSQLStore
- -
-
- - - - - - -
-
Variables
- -
- -

Inherited Variables

- -

Inherited from Auth_OpenID_OpenIDStore

-
- - Auth_OpenID_OpenIDStore::$AUTH_KEY_LEN
-
-
- -
-
- - - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SQLStore.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SQLStore.html deleted file mode 100644 index 31979ca78..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SQLStore.html +++ /dev/null @@ -1,720 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_SQLStore - - - - -
-

Class Auth_OpenID_SQLStore

- - -
-
Description
- -
- -

This is the parent class for the SQL stores, which contains the logic common to all of the SQL stores.

-

The table names used are determined by the class variables settings_table_name, associations_table_name, and nonces_table_name. To change the name of the tables used, pass new table names into the constructor.

To create the tables with the proper schema, see the createTables method.

This class shouldn't be used directly. Use one of its subclasses instead, as those contain the code necessary to use a specific database. If you're an OpenID integrator and you'd like to create an SQL-driven store that wraps an application's database abstraction, be sure to create a subclass of Auth_OpenID_DatabaseConnection that calls the application's database abstraction calls. Then, pass an instance of your new database connection class to your SQLStore subclass constructor.

All methods other than the constructor and createTables should be considered implementation details.

- -

- Located in /Auth/OpenID/SQLStore.php (line 57) -

- - -
Auth_OpenID_OpenIDStore
-   |
-   --Auth_OpenID_SQLStore
- -
-
- - -
-
Direct descendents
- -
- - - - - - - - - - - - - - - - - -
ClassDescription
Auth_OpenID_SQLiteStore - An SQL store that uses SQLite as its backend. -
Auth_OpenID_PostgreSQLStore - An SQL store that uses PostgreSQL as its backend. -
Auth_OpenID_MySQLStore - An SQL store that uses MySQL as its backend. -
-
-
- - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_SQLStore - Auth_OpenID_SQLStore - (connection $connection, [string $settings_table = null], [associations_table: $associations_table = null], [nonces_table: $nonces_table = null]) -
- -
- void - blobDecode - ( $blob) -
- -
- void - blobEncode - ( $str) -
- -
- void - createTables - () -
- -
- void - create_assoc_table - () -
- -
- void - create_nonce_table - () -
- -
- void - create_settings_table - () -
- -
- void - getAssociation - ( $server_url, [ $handle = null]) -
- -
- void - getAuthKey - () -
- -
- void - isError - ( $value) -
- -
- void - removeAssociation - ( $server_url,  $handle) -
- -
- void - reset - () -
- -
- void - resultToBool - ( $obj) -
- -
- void - setSQL - () -
- -
- void - storeAssociation - ( $server_url,  $association) -
- -
- void - tableExists - ( $table_name) -
- -
- void - useNonce - ( $nonce) -
-
-
-
- - -
-
Variables
- -
- -

Inherited Variables

- -

Inherited from Auth_OpenID_OpenIDStore

-
- - Auth_OpenID_OpenIDStore::$AUTH_KEY_LEN
-
-
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_SQLStore (line 82) -
- - -

This creates a new SQLStore instance. It requires an established database connection be given to it, and it allows overriding the default table names.

- -
- Auth_OpenID_SQLStore - - Auth_OpenID_SQLStore - - (connection $connection, [string $settings_table = null], [associations_table: $associations_table = null], [nonces_table: $nonces_table = null]) -
- -
    -
  • - connection - $connection: This must be an established connection to a database of the correct type for the SQLStore subclass you're using. This must either be an PEAR DB connection handle or an instance of a subclass of Auth_OpenID_DatabaseConnection.
  • -
  • - string - $settings_table: This is an optional parameter to specify the name of the table used for this store's settings. The default value is 'oid_settings'.
  • -
  • - associations_table: - $associations_table: This is an optional parameter to specify the name of the table used for storing associations. The default value is 'oid_associations'.
  • -
  • - nonces_table: - $nonces_table: This is an optional parameter to specify the name of the table used for storing nonces. The default value is 'oid_nonces'.
  • -
- - -
- -
- -
- blobDecode (line 301) -
- - - -
- void - - blobDecode - - ( $blob) -
- -
    -
  • - - $blob
  • -
- - -
- -
- -
- blobEncode (line 306) -
- - - -
- void - - blobEncode - - ( $str) -
- -
    -
  • - - $str
  • -
- - -
- -
- -
- createTables (line 311) -
- - - -
- void - - createTables - - () -
- - - -
- -
- -
- create_assoc_table (line 335) -
- - - -
- void - - create_assoc_table - - () -
- - - -
- -
- -
- create_nonce_table (line 326) -
- - - -
- void - - create_nonce_table - - () -
- - - -
- -
- -
- create_settings_table (line 344) -
- - - -
- void - - create_settings_table - - () -
- - - -
- -
- -
- getAssociation (line 475) -
- - - -
- void - - getAssociation - - ( $server_url, [ $handle = null]) -
- -
    -
  • - - $server_url
  • -
  • - - $handle
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::getAssociation()
-
This method returns an Association object from storage that matches the server URL and, if specified, handle. It returns null if no such association is found or if the matching association is expired.
-
- -
- -
- -
- getAuthKey (line 370) -
- - - -
- void - - getAuthKey - - () -
- - -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::getAuthKey()
-
This method returns a key used to sign the tokens, to ensure that they haven't been tampered with in transit. It should return the same key every time it is called. The key returned should be AUTH_KEY_LEN bytes long.
-
- -
- -
- -
- isError (line 177) -
- - -

Returns true if $value constitutes a database error; returns false otherwise.

- -
- void - - isError - - ( $value) -
- -
    -
  • - - $value
  • -
- - -
- -
- -
- removeAssociation (line 458) -
- - - -
- void - - removeAssociation - - ( $server_url,  $handle) -
- -
    -
  • - - $server_url
  • -
  • - - $handle
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::removeAssociation()
-
This method removes the matching association if it's found, and returns whether the association was removed or not.
-
- -
- -
- -
- reset (line 209) -
- - -

Resets the store by removing all records from the store's tables.

- -
- void - - reset - - () -
- - -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::reset()
-
Removes all entries from the store; implementation is optional.
-
- -
- -
- -
- resultToBool (line 187) -
- - -

Converts a query result to a boolean. If the result is a database error according to $this->isError(), this returns false; otherwise, this returns true.

- -
- void - - resultToBool - - ( $obj) -
- -
    -
  • - - $obj
  • -
- - -
- -
- -
- setSQL (line 201) -
- - -

This method should be overridden by subclasses. This method is called by the constructor to set values in $this->sql, which is an array keyed on sql name.

- -
- void - - setSQL - - () -
- - - -
-
Redefined in descendants as:
- -
- -
- -
- storeAssociation (line 412) -
- - - -
- void - - storeAssociation - - ( $server_url,  $association) -
- -
    -
  • - - $server_url
  • -
  • - - $association
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::storeAssociation()
-
This method puts an Association object into storage, retrievable by server URL and handle.
-
- -
- -
- -
- tableExists (line 166) -
- - - -
- void - - tableExists - - ( $table_name) -
- -
    -
  • - - $table_name
  • -
- - -
- -
- -
- useNonce (line 575) -
- - - -
- void - - useNonce - - ( $nonce) -
- -
    -
  • - - $nonce
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_OpenIDStore::useNonce()
-
This method is called when the library is attempting to use a nonce. If the nonce is in the store, this method removes it and returns a value which evaluates as true. Otherwise it returns a value which evaluates as false.
-
- -
-

Inherited Methods

- - -

Inherited From Auth_OpenID_OpenIDStore

-
- Auth_OpenID_OpenIDStore::getAssociation()
- Auth_OpenID_OpenIDStore::getAuthKey()
- Auth_OpenID_OpenIDStore::isDumb()
- Auth_OpenID_OpenIDStore::removeAssociation()
- Auth_OpenID_OpenIDStore::reset()
- Auth_OpenID_OpenIDStore::storeAssociation()
- Auth_OpenID_OpenIDStore::storeNonce()
- Auth_OpenID_OpenIDStore::useNonce()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SQLiteStore.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SQLiteStore.html deleted file mode 100644 index 05727a546..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SQLiteStore.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_SQLiteStore - - - - -
-

Class Auth_OpenID_SQLiteStore

- - -
-
Description
- -
- -

An SQL store that uses SQLite as its backend.

- -

- Located in /Auth/OpenID/SQLiteStore.php (line 19) -

- - -
Auth_OpenID_OpenIDStore
-   |
-   --Auth_OpenID_SQLStore
-      |
-      --Auth_OpenID_SQLiteStore
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- void - setSQL - () -
-
-
-
- - -
-
Variables
- -
- -

Inherited Variables

- -

Inherited from Auth_OpenID_OpenIDStore

-
- - Auth_OpenID_OpenIDStore::$AUTH_KEY_LEN
-
-
- -
-
- - - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Server.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Server.html deleted file mode 100644 index b1b8ee96a..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Server.html +++ /dev/null @@ -1,202 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_Server - - - - -
-

Class Auth_OpenID_Server

- - -
-
Description
- -
- -

An object that implements the OpenID protocol for a single URL.

-

Use this object by calling getOpenIDResponse when you get any request for the server URL.

-

- Located in /Auth/OpenID/Server.php (line 1235) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_Server - Auth_OpenID_Server - ( &$store) -
- -
- void - decodeRequest - ( &$query) -
- -
- void - encodeResponse - ( &$response) -
- -
- Auth_OpenID_Response - handleRequest - (Auth_OpenID_Request $request) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_Server (line 1236) -
- - - -
- Auth_OpenID_Server - - Auth_OpenID_Server - - ( &$store) -
- -
    -
  • - - &$store
  • -
- - -
- -
- -
- decodeRequest (line 1298) -
- - -

Decodes a query args array into the appropriate Auth_OpenID_Request object.

- -
- void - - decodeRequest - - ( &$query) -
- -
    -
  • - - &$query
  • -
- - -
- -
- -
- encodeResponse (line 1289) -
- - -

Encodes as response in the appropriate format suitable for sending to the user agent.

- -
- void - - encodeResponse - - ( &$response) -
- -
    -
  • - - &$response
  • -
- - -
- -
- -
- handleRequest (line 1255) -
- - -

Handle a request. Given an Auth_OpenID_Request object, call the appropriate Auth_OpenID_Server method to process the request and generate a response.

-
    -
  • return: A response object capable of generating a user-agent reply.
  • -
- -
- Auth_OpenID_Response - - handleRequest - - (Auth_OpenID_Request $request) -
- -
    -
  • - Auth_OpenID_Request - $request: An Auth_OpenID_Request returned by Auth_OpenID_Server::decodeRequest.
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ServerError.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ServerError.html deleted file mode 100644 index 106e70b3f..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ServerError.html +++ /dev/null @@ -1,255 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_ServerError - - - - -
-

Class Auth_OpenID_ServerError

- - -
-
Description
- -
- -

An error class which gets instantiated and returned whenever an OpenID protocol error occurs. Be prepared to use this in place of an ordinary server response.

-

- Located in /Auth/OpenID/Server.php (line 148) -

- - -

-	
-			
-
- - -
-
Direct descendents
- -
- - - - - - - - - - - - - - - - - -
ClassDescription
Auth_OpenID_MalformedReturnURL - An error indicating that the return_to URL is malformed. -
Auth_OpenID_MalformedTrustRoot - This error is returned when the trust_root value is malformed. -
Auth_OpenID_UntrustedReturnURL - An error that indicates that the given return_to is not under the given trust_root. -
-
-
- - - - -
-
Method Summary
- -
-
- -
- void - encodeToKVForm - () -
- -
- void - encodeToURL - () -
- -
- void - hasReturnTo - () -
- -
- void - toString - () -
- -
- void - whichEncoding - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- encodeToKVForm (line 199) -
- - -

Encodes the response to key-value form. This is a machine-readable format used to respond to messages which came directly from the consumer and not through the user-agent. See the OpenID specification.

- -
- void - - encodeToKVForm - - () -
- - - -
- -
- -
- encodeToURL (line 178) -
- - -

Encodes this error's response as a URL suitable for redirection. If the response has no return_to, another Auth_OpenID_ServerError is returned.

- -
- void - - encodeToURL - - () -
- - - -
- -
- -
- hasReturnTo (line 162) -
- - -

Returns the return_to URL for the request which caused this error.

- -
- void - - hasReturnTo - - () -
- - - -
- -
- -
- toString (line 234) -
- - -

Returns this error message.

- -
- void - - toString - - () -
- - - -
-
Redefined in descendants as:
- -
- -
- -
- whichEncoding (line 211) -
- - -

Returns one of $_Auth_OpenID_Encode_Url, $_Auth_OpenID_Encode_Kvform, or null, depending on the type of encoding expected for this error's payload.

- -
- void - - whichEncoding - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ServerRequest.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ServerRequest.html deleted file mode 100644 index ad1224308..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_ServerRequest.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_ServerRequest - - - - -
-

Class Auth_OpenID_ServerRequest

- - -
-
Description
- -
- -

Object that holds the state of a request to the OpenID server

-

With accessor functions to get at the internal request data.

- -

- Located in /Auth/OpenID/ServerRequest.php (line 30) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_ServerRequest - Auth_OpenID_ServerRequest - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_ServerRequest (line 31) -
- - - -
- Auth_OpenID_ServerRequest - - Auth_OpenID_ServerRequest - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SetupNeededResponse.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SetupNeededResponse.html deleted file mode 100644 index 7a0b59d04..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SetupNeededResponse.html +++ /dev/null @@ -1,172 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_SetupNeededResponse - - - - -
-

Class Auth_OpenID_SetupNeededResponse

- - -
-
Description
- -
- -

A response with a status of Auth_OpenID_SETUP_NEEDED. Indicates that the request was in immediate mode, and the server is unable to authenticate the user without further interaction.

-

identity_url - The identity URL for which authentication was attempted.

setup_url - A URL that can be used to send the user to the server to set up for authentication. The user should be redirected in to the setup_url, either in the current window or in a new browser window.

status - Auth_OpenID_SETUP_NEEDED.

-

- Located in /Auth/OpenID/Consumer.php (line 1174) -

- - -
Auth_OpenID_ConsumerResponse
-   |
-   --Auth_OpenID_SetupNeededResponse
- -
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $status -
-
-
-
- - -
-
Method Summary
- -
-
- -
- Auth_OpenID_SetupNeededResponse - Auth_OpenID_SetupNeededResponse - ( $endpoint, [ $setup_url = null]) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $status - = Auth_OpenID_SETUP_NEEDED (line 1175) - -
- - - - -
-
Redefinition of:
-
-
Auth_OpenID_ConsumerResponse::$status
-
- - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_SetupNeededResponse (line 1177) -
- - - -
- Auth_OpenID_SetupNeededResponse - - Auth_OpenID_SetupNeededResponse - - ( $endpoint, [ $setup_url = null]) -
- -
    -
  • - - $endpoint
  • -
  • - - $setup_url
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Signatory.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Signatory.html deleted file mode 100644 index ce6e2ec57..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_Signatory.html +++ /dev/null @@ -1,381 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_Signatory - - - - -
-

Class Auth_OpenID_Signatory

- - -
-
Description
- -
- -

Responsible for the signature of query data and the verification of OpenID signature values.

-

- Located in /Auth/OpenID/Server.php (line 893) -

- - -

-	
-			
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $dumb_key -
-
- mixed - $normal_key -
-
- mixed - $SECRET_LIFETIME -
-
-
-
- - -
-
Method Summary
- -
-
- -
- Auth_OpenID_Signatory - Auth_OpenID_Signatory - ( &$store) -
- -
- void - createAssociation - ([ $dumb = true], [ $assoc_type = 'HMAC-SHA1']) -
- -
- void - getAssociation - ( $assoc_handle,  $dumb) -
- -
- void - invalidate - ( $assoc_handle,  $dumb) -
- -
- void - sign - ( $response) -
- -
- void - verify - ( $assoc_handle,  $sig,  $signed_pairs) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $dumb_key - = 'http://localhost/|dumb' (line 903) - -
- - - - - - - -
- -
- -
- - mixed - $normal_key - = 'http://localhost/|normal' (line 902) - -
- - - - - - - -
- -
- -
- - mixed - $SECRET_LIFETIME - = 1209600 (line 896) - -
- - - - - - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_Signatory (line 908) -
- - -

Create a new signatory using a given store.

- -
- Auth_OpenID_Signatory - - Auth_OpenID_Signatory - - ( &$store) -
- -
    -
  • - - &$store
  • -
- - -
- -
- -
- createAssociation (line 963) -
- - -

Make a new association.

- -
- void - - createAssociation - - ([ $dumb = true], [ $assoc_type = 'HMAC-SHA1']) -
- -
    -
  • - - $dumb
  • -
  • - - $assoc_type
  • -
- - -
- -
- -
- getAssociation (line 986) -
- - -

Given an association handle, get the association from the store, or return a ServerError or null if something goes wrong.

- -
- void - - getAssociation - - ( $assoc_handle,  $dumb) -
- -
    -
  • - - $assoc_handle
  • -
  • - - $dumb
  • -
- - -
- -
- -
- invalidate (line 1012) -
- - -

Invalidate a given association handle.

- -
- void - - invalidate - - ( $assoc_handle,  $dumb) -
- -
    -
  • - - $assoc_handle
  • -
  • - - $dumb
  • -
- - -
- -
- -
- sign (line 936) -
- - -

Given a response, sign the fields in the response's 'signed' list, and insert the signature into the response.

- -
- void - - sign - - ( $response) -
- -
    -
  • - - $response
  • -
- - -
- -
- -
- verify (line 918) -
- - -

Verify, using a given association handle, a signature with signed key-value pairs from an HTTP request.

- -
- void - - verify - - ( $assoc_handle,  $sig,  $signed_pairs) -
- -
    -
  • - - $assoc_handle
  • -
  • - - $sig
  • -
  • - - $signed_pairs
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SigningEncoder.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SigningEncoder.html deleted file mode 100644 index 84aff70cf..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SigningEncoder.html +++ /dev/null @@ -1,179 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_SigningEncoder - - - - -
-

Class Auth_OpenID_SigningEncoder

- - -
-
Description
- -
- -

An encoder which also takes care of signing fields when required.

-

- Located in /Auth/OpenID/Server.php (line 1077) -

- - -
Auth_OpenID_Encoder
-   |
-   --Auth_OpenID_SigningEncoder
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_SigningEncoder - Auth_OpenID_SigningEncoder - ( &$signatory) -
- -
- void - encode - ( &$response) -
-
-
-
- - -
-
Variables
- -
- -

Inherited Variables

- -

Inherited from Auth_OpenID_Encoder

-
- - Auth_OpenID_Encoder::$responseFactory
-
-
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_SigningEncoder (line 1079) -
- - - -
- Auth_OpenID_SigningEncoder - - Auth_OpenID_SigningEncoder - - ( &$signatory) -
- -
    -
  • - - &$signatory
  • -
- - -
- -
- -
- encode (line 1088) -
- - -

Sign an Auth_OpenID_Response and return an Auth_OpenID_WebResponse.

- -
- void - - encode - - ( &$response) -
- -
    -
  • - - &$response
  • -
- -
-
Redefinition of:
-
-
Auth_OpenID_Encoder::encode()
-
Encode an Auth_OpenID_Response and return an Auth_OpenID_WebResponse.
-
- -
-

Inherited Methods

- - -

Inherited From Auth_OpenID_Encoder

-
- Auth_OpenID_Encoder::encode()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SuccessResponse.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SuccessResponse.html deleted file mode 100644 index 4b75a2c2a..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_SuccessResponse.html +++ /dev/null @@ -1,201 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_SuccessResponse - - - - -
-

Class Auth_OpenID_SuccessResponse

- - -
-
Description
- -
- -

A response with a status of Auth_OpenID_SUCCESS. Indicates that

-

this request is a successful acknowledgement from the OpenID server that the supplied URL is, indeed controlled by the requesting agent. This has three relevant attributes:

identity_url - The identity URL that has been authenticated

signed_args - The arguments in the server's response that were signed and verified.

status - Auth_OpenID_SUCCESS.

-

- Located in /Auth/OpenID/Consumer.php (line 1041) -

- - -
Auth_OpenID_ConsumerResponse
-   |
-   --Auth_OpenID_SuccessResponse
- -
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $status -
-
-
-
- - -
-
Method Summary
- -
-
- -
- void - extensionResponse - (string $prefix) -
- -
- string - getReturnTo - () -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $status - = Auth_OpenID_SUCCESS (line 1042) - -
- - - - -
-
Redefinition of:
-
-
Auth_OpenID_ConsumerResponse::$status
-
- - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- extensionResponse (line 1074) -
- - -

Extract signed extension data from the server's response.

- -
- void - - extensionResponse - - (string $prefix) -
- -
    -
  • - string - $prefix: The extension namespace from which to extract the extension data.
  • -
- - -
- -
- -
- getReturnTo (line 1099) -
- - -

Get the openid.return_to argument from this response.

-

This is useful for verifying that this request was initiated by this consumer.

-
    -
  • return: The return_to URL supplied to the server on the initial request, or null if the response did not contain an 'openid.return_to' argument.
  • -
- -
- string - - getReturnTo - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_UntrustedReturnURL.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_UntrustedReturnURL.html deleted file mode 100644 index 5e8b6346b..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_UntrustedReturnURL.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_UntrustedReturnURL - - - - -
-

Class Auth_OpenID_UntrustedReturnURL

- - -
-
Description
- -
- -

An error that indicates that the given return_to is not under the given trust_root.

-

- Located in /Auth/OpenID/Server.php (line 1203) -

- - -
Auth_OpenID_ServerError
-   |
-   --Auth_OpenID_UntrustedReturnURL
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- Auth_OpenID_UntrustedReturnURL - Auth_OpenID_UntrustedReturnURL - ( $return_to,  $trust_root) -
- -
- void - toString - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_UntrustedReturnURL (line 1204) -
- - - -
- Auth_OpenID_UntrustedReturnURL - - Auth_OpenID_UntrustedReturnURL - - ( $return_to,  $trust_root) -
- -
    -
  • - - $return_to
  • -
  • - - $trust_root
  • -
- - -
- -
- -
- toString (line 1215) -
- - - -
- void - - toString - - () -
- - -
-
Redefinition of:
-
-
Auth_OpenID_ServerError::toString()
-
Returns this error message.
-
- -
-

Inherited Methods

- - -

Inherited From Auth_OpenID_ServerError

-
- Auth_OpenID_ServerError::encodeToKVForm()
- Auth_OpenID_ServerError::encodeToURL()
- Auth_OpenID_ServerError::hasReturnTo()
- Auth_OpenID_ServerError::toString()
- Auth_OpenID_ServerError::whichEncoding()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_WebResponse.html b/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_WebResponse.html deleted file mode 100644 index 9bf45754c..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/Auth_OpenID_WebResponse.html +++ /dev/null @@ -1,189 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_WebResponse - - - - -
-

Class Auth_OpenID_WebResponse

- - -
-
Description
- -
- -

A web-capable response object which you can use to generate a user-agent response.

-

- Located in /Auth/OpenID/Server.php (line 864) -

- - -

-	
-			
-
- - - - -
-
Variable Summary
- -
-
-
- mixed - $body -
-
- mixed - $code -
-
-
-
- - -
-
Method Summary
- -
-
- -
- Auth_OpenID_WebResponse - Auth_OpenID_WebResponse - ([ $code = null], [ $headers = null], [ $body = null]) -
-
-
-
- - -
-
Variables
- -
- - -
- -
- - mixed - $body - = "" (line 866) - -
- - - - - - - -
- -
- -
- - mixed - $code - = AUTH_OPENID_HTTP_OK (line 865) - -
- - - - - - - -
- -
-
- - -
-
Methods
- -
- - -
- -
- Constructor Auth_OpenID_WebResponse (line 868) -
- - - -
- Auth_OpenID_WebResponse - - Auth_OpenID_WebResponse - - ([ $code = null], [ $headers = null], [ $body = null]) -
- -
    -
  • - - $code
  • -
  • - - $headers
  • -
  • - - $body
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Association.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Association.php.html deleted file mode 100644 index b5f86c380..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Association.php.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - Docs for page Association.php - - - - -
-

/Auth/OpenID/Association.php

- - -
-
Description
- -
- -

This module contains code for dealing with associations between consumers and servers.

-

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_Association - - This class represents an association between a server and a consumer. In general, users of this library will never see instances of this object. The only exception is if you implement a custom Auth_OpenID_OpenIDStore. -
-
-
- - - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:27 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Consumer.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Consumer.php.html deleted file mode 100644 index a746d889a..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Consumer.php.html +++ /dev/null @@ -1,382 +0,0 @@ - - - - - - Docs for page Consumer.php - - - - -
-

/Auth/OpenID/Consumer.php

- - -
-
Description
- -
- -

This module documents the main interface with the OpenID consumer

-

library. The only part of the library which has to be used and isn't documented in full here is the store required to create an Auth_OpenID_Consumer instance. More on the abstract store type and concrete implementations of it that are provided in the documentation for the Auth_OpenID_Consumer constructor.

OVERVIEW

The OpenID identity verification process most commonly uses the following steps, as visible to the user of this library:

  1. The user enters their OpenID into a field on the consumer's - site, and hits a login button.
  2. The consumer site discovers the user's OpenID server using the - YADIS protocol.
  3. The consumer site sends the browser a redirect to the identity - server. This is the authentication request as described in - the OpenID specification.
  4. The identity server's site sends the browser a redirect back - to the consumer site. This redirect contains the server's - response to the authentication request.
The most important part of the flow to note is the consumer's site must handle two separate HTTP requests in order to perform the full identity check.

LIBRARY DESIGN

This consumer library is designed with that flow in mind. The goal is to make it as easy as possible to perform the above steps securely.

At a high level, there are two important parts in the consumer library. The first important part is this module, which contains the interface to actually use this library. The second is the Auth_OpenID_Interface class, which describes the interface to use if you need to create a custom method for storing the state this library needs to maintain between requests.

In general, the second part is less important for users of the library to know about, as several implementations are provided which cover a wide variety of situations in which consumers may use the library.

This module contains a class, Auth_OpenID_Consumer, with methods corresponding to the actions necessary in each of steps 2, 3, and 4 described in the overview. Use of this library should be as easy as creating an Auth_OpenID_Consumer instance and calling the methods appropriate for the action the site wants to take.

STORES AND DUMB MODE

OpenID is a protocol that works best when the consumer site is able to store some state. This is the normal mode of operation for the protocol, and is sometimes referred to as smart mode. There is also a fallback mode, known as dumb mode, which is available when the consumer site is not able to store state. This mode should be avoided when possible, as it leaves the implementation more vulnerable to replay attacks.

The mode the library works in for normal operation is determined by the store that it is given. The store is an abstraction that handles the data that the consumer needs to manage between http requests in order to operate efficiently and securely.

Several store implementation are provided, and the interface is fully documented so that custom stores can be used as well. See the documentation for the Auth_OpenID_Consumer class for more information on the interface for stores. The implementations that are provided allow the consumer site to store the necessary data in several different ways, including several SQL databases and normal files on disk.

There is an additional concrete store provided that puts the system in dumb mode. This is not recommended, as it removes the library's ability to stop replay attacks reliably. It still uses time-based checking to make replay attacks only possible within a small window, but they remain possible within that window. This store should only be used if the consumer site has no way to retain data between requests at all.

IMMEDIATE MODE

In the flow described above, the user may need to confirm to the lidentity server that it's ok to authorize his or her identity. The server may draw pages asking for information from the user before it redirects the browser back to the consumer's site. This is generally transparent to the consumer site, so it is typically ignored as an implementation detail.

There can be times, however, where the consumer site wants to get a response immediately. When this is the case, the consumer can put the library in immediate mode. In immediate mode, there is an extra response possible from the server, which is essentially the server reporting that it doesn't have enough information to answer the question yet. In addition to saying that, the identity server provides a URL to which the user can be sent to provide the needed information and let the server finish handling the original request.

USING THIS LIBRARY

Integrating this library into an application is usually a relatively straightforward process. The process should basically follow this plan:

Add an OpenID login field somewhere on your site. When an OpenID is entered in that field and the form is submitted, it should make a request to the your site which includes that OpenID URL.

First, the application should instantiate the Auth_OpenID_Consumer class using the store of choice (Auth_OpenID_FileStore or one of the SQL-based stores). If the application has any sort of session framework that provides per-client state management, a dict-like object to access the session should be passed as the optional second parameter. (The default behavior is to use PHP's standard session machinery.)

Next, the application should call the Auth_OpenID_Consumer object's 'begin' method. This method takes the OpenID URL. The 'begin' method returns an Auth_OpenID_AuthRequest object.

Next, the application should call the 'redirectURL' method of the Auth_OpenID_AuthRequest object. The 'return_to' URL parameter is the URL that the OpenID server will send the user back to after attempting to verify his or her identity. The 'trust_root' is the URL (or URL pattern) that identifies your web site to the user when he or she is authorizing it. Send a redirect to the resulting URL to the user's browser.

That's the first half of the authentication process. The second half of the process is done after the user's ID server sends the user's browser a redirect back to your site to complete their login.

When that happens, the user will contact your site at the URL given as the 'return_to' URL to the Auth_OpenID_AuthRequest::redirectURL call made above. The request will have several query parameters added to the URL by the identity server as the information necessary to finish the request.

Lastly, instantiate an Auth_OpenID_Consumer instance as above and call its 'complete' method, passing in all the received query arguments.

There are multiple possible return types possible from that method. These indicate the whether or not the login was successful, and include any additional information appropriate for their type.

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassDescription
- Auth_OpenID_Consumer - - An OpenID consumer implementation that performs discovery and does session management. See the Consumer.php file documentation for more information. -
- Auth_OpenID_DiffieHellmanConsumerSession - - -
- Auth_OpenID_PlainTextConsumerSession - - -
- Auth_OpenID_AuthRequest - - This class represents an authentication request from a consumer to an OpenID server. -
- Auth_OpenID_ConsumerResponse - - The base class for responses from the Auth_OpenID_Consumer. -
- Auth_OpenID_SuccessResponse - - A response with a status of Auth_OpenID_SUCCESS. Indicates that -
- Auth_OpenID_FailureResponse - - A response with a status of Auth_OpenID_FAILURE. Indicates that the OpenID protocol has failed. This could be locally or remotely triggered. This has three relevant attributes: -
- Auth_OpenID_CancelResponse - - A response with a status of Auth_OpenID_CANCEL. Indicates that the user cancelled the OpenID authentication request. This has two relevant attributes: -
- Auth_OpenID_SetupNeededResponse - - A response with a status of Auth_OpenID_SETUP_NEEDED. Indicates that the request was in immediate mode, and the server is unable to authenticate the user without further interaction. -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ("Auth/OpenID/Discover.php") - (line 173) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/KVForm.php") - (line 172) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/DiffieHellman.php") - (line 171) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID.php") - (line 167) - -
- - -

Require utility classes and functions for the consumer.

- -
- -
- -
- - require_once - ("Services/Yadis/Manager.php") - (line 174) - -
- - - -
- -
- -
- - require_once - ("Services/Yadis/XRI.php") - (line 175) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/Association.php") - (line 169) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/HMACSHA1.php") - (line 168) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/CryptUtil.php") - (line 170) - -
- - - -
-
-
- - -
-
Constants
- -
- -
- -
- - Auth_OpenID_CANCEL = 'cancel' - (line 186) - -
- - -

Status to indicate cancellation of OpenID authentication.

- - -
- -
- -
- - Auth_OpenID_DEFAULT_NONCE_CHRS = "abcdefghijklmnopqrstuvwxyz"."ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" - (line 212) - -
- - -

This is the characters that the nonces are made from.

- - -
- -
- -
- - Auth_OpenID_FAILURE = 'failure' - (line 192) - -
- - -

This is the status code completeAuth returns when the value it received indicated an invalid login.

- - -
- -
- -
- - Auth_OpenID_PARSE_ERROR = 'parse error' - (line 207) - -
- - -

This is the status code beginAuth returns when the page fetched from the entered OpenID URL doesn't contain the necessary link tags to function as an identity page.

- - -
- -
- -
- - Auth_OpenID_SETUP_NEEDED = 'setup needed' - (line 200) - -
- - -

This is the status code completeAuth returns when the Auth_OpenID_Consumer instance is in immediate mode, and the identity server sends back a URL to send the user to to complete his or her login.

- - -
- -
- -
- - Auth_OpenID_SUCCESS = 'success' - (line 181) - -
- - -

This is the status code returned when the complete method returns successfully.

- - -
-
-
- - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:27 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---DatabaseConnection.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---DatabaseConnection.php.html deleted file mode 100644 index f943d3936..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---DatabaseConnection.php.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - Docs for page DatabaseConnection.php - - - - -
-

/Auth/OpenID/DatabaseConnection.php

- - -
-
Description
- -
- -

The Auth_OpenID_DatabaseConnection class, which is used to emulate a PEAR database connection.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_DatabaseConnection - - An empty base class intended to emulate PEAR connection -
-
-
- - - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---DumbStore.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---DumbStore.php.html deleted file mode 100644 index e051ec2a2..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---DumbStore.php.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - Docs for page DumbStore.php - - - - -
-

/Auth/OpenID/DumbStore.php

- - -
-
Description
- -
- -

This file supplies a dumb store backend for OpenID servers and consumers.

-

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_DumbStore - - This is a store for use in the worst case, when you have no way of saving state on the consumer site. Using this store makes the consumer vulnerable to replay attacks, as it's unable to use nonces. Avoid using this store if it is at all possible. -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ('Auth/OpenID/Interface.php') - (line 20) - -
- - -

Import the interface for creating a new store class.

- -
- -
- -
- - require_once - ('Auth/OpenID/HMACSHA1.php') - (line 21) - -
- - - -
-
-
- - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---FileStore.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---FileStore.php.html deleted file mode 100644 index 7e18242fe..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---FileStore.php.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - Docs for page FileStore.php - - - - -
-

/Auth/OpenID/FileStore.php

- - -
-
Description
- -
- -

This file supplies a Memcached store backend for OpenID servers and consumers.

-

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_FileStore - - This is a filesystem-based store for OpenID associations and -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ('Auth/OpenID.php') - (line 21) - -
- - -

Require base class for creating a new interface.

- -
- -
- -
- - require_once - ('Auth/OpenID/Interface.php') - (line 22) - -
- - - -
- -
- -
- - require_once - ('Auth/OpenID/HMACSHA1.php') - (line 23) - -
- - - -
-
-
- - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:28 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Interface.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Interface.php.html deleted file mode 100644 index 097093d39..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Interface.php.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - Docs for page Interface.php - - - - -
-

/Auth/OpenID/Interface.php

- - -
-
Description
- -
- -

This file specifies the interface for PHP OpenID store implementations.

-

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_OpenIDStore - - This is the interface for the store objects the OpenID library -
-
-
- - - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---MySQLStore.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---MySQLStore.php.html deleted file mode 100644 index c8cd62558..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---MySQLStore.php.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - Docs for page MySQLStore.php - - - - -
-

/Auth/OpenID/MySQLStore.php

- - -
-
Description
- -
- -

A MySQL store.

- -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_MySQLStore - - An SQL store that uses MySQL as its backend. -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ("Auth/OpenID/SQLStore.php") - (line 12) - -
- - -

Require the base class file.

- -
-
-
- - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---PostgreSQLStore.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---PostgreSQLStore.php.html deleted file mode 100644 index 6a14f1873..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---PostgreSQLStore.php.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - Docs for page PostgreSQLStore.php - - - - -
-

/Auth/OpenID/PostgreSQLStore.php

- - -
-
Description
- -
- -

A PostgreSQL store.

- -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_PostgreSQLStore - - An SQL store that uses PostgreSQL as its backend. -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ("Auth/OpenID/SQLStore.php") - (line 12) - -
- - -

Require the base class file.

- -
-
-
- - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---SQLStore.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---SQLStore.php.html deleted file mode 100644 index ecba1274c..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---SQLStore.php.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - Docs for page SQLStore.php - - - - -
-

/Auth/OpenID/SQLStore.php

- - -
-
Description
- -
- -

SQL-backed OpenID stores.

-

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_SQLStore - - This is the parent class for the SQL stores, which contains the logic common to all of the SQL stores. -
-
-
- - -
-
Includes
- -
- -
- -
- - include_once - ('DB.php') - (line 24) - -
- - -

Require the PEAR DB module because we'll need it for the SQL-based

-

stores implemented here. We silence any errors from the inclusion because it might not be present, and a user of the SQL stores may supply an Auth_OpenID_DatabaseConnection instance that implements its own storage.

- -
-
-
- - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---SQLiteStore.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---SQLiteStore.php.html deleted file mode 100644 index 6f6c02310..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---SQLiteStore.php.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - Docs for page SQLiteStore.php - - - - -
-

/Auth/OpenID/SQLiteStore.php

- - -
-
Description
- -
- -

An SQLite store.

- -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_SQLiteStore - - An SQL store that uses SQLite as its backend. -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ("Auth/OpenID/SQLStore.php") - (line 12) - -
- - -

Require the base class file.

- -
-
-
- - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Server.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Server.php.html deleted file mode 100644 index 32eb172c4..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---Server.php.html +++ /dev/null @@ -1,354 +0,0 @@ - - - - - - Docs for page Server.php - - - - -
-

/Auth/OpenID/Server.php

- - -
-
Description
- -
- -

OpenID server protocol and logic.

-

Overview

An OpenID server must perform three tasks:

  1. Examine the incoming request to determine its nature and validity.
  2. Make a decision about how to respond to this request.
  3. Format the response according to the protocol.
The first and last of these tasks may performed by the 'decodeRequest' and 'encodeResponse' methods of the Auth_OpenID_Server object. Who gets to do the intermediate task -- deciding how to respond to the request -- will depend on what type of request it is.

If it's a request to authenticate a user (a 'checkid_setup' or 'checkid_immediate' request), you need to decide if you will assert that this user may claim the identity in question. Exactly how you do that is a matter of application policy, but it generally involves making sure the user has an account with your system and is logged in, checking to see if that identity is hers to claim, and verifying with the user that she does consent to releasing that information to the party making the request.

Examine the properties of the Auth_OpenID_CheckIDRequest object, and if and when you've come to a decision, form a response by calling Auth_OpenID_CheckIDRequest::answer.

Other types of requests relate to establishing associations between client and server and verifing the authenticity of previous communications. Auth_OpenID_Server contains all the logic and data necessary to respond to such requests; just pass it to Auth_OpenID_Server::handleRequest.

OpenID Extensions

Do you want to provide other information for your users in addition to authentication? Version 1.2 of the OpenID protocol allows consumers to add extensions to their requests. For example, with sites using the Simple Registration Extension (http://www.openidenabled.com/openid/simple-registration-extension/), a user can agree to have their nickname and e-mail address sent to a site when they sign up.

Since extensions do not change the way OpenID authentication works, code to handle extension requests may be completely separate from the Auth_OpenID_Request class here. But you'll likely want data sent back by your extension to be signed. Auth_OpenID_Response provides methods with which you can add data to it which can be signed with the other data in the OpenID signature.

For example:

// when request is a checkid_* request response = request.answer(True) // this will a signed 'openid.sreg.timezone' parameter to the response response.addField('sreg', 'timezone', 'America/Los_Angeles')

Stores

The OpenID server needs to maintain state between requests in order to function. Its mechanism for doing this is called a store. The store interface is defined in Interface.php. Additionally, several concrete store implementations are provided, so that most sites won't need to implement a custom store. For a store backed by flat files on disk, see Auth_OpenID_FileStore. For stores based on MySQL, SQLite, or PostgreSQL, see the Auth_OpenID_SQLStore subclasses.

Upgrading

The keys by which a server looks up associations in its store have changed in version 1.2 of this library. If your store has entries created from version 1.0 code, you should empty it.

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassDescription
- Auth_OpenID_ServerError - - An error class which gets instantiated and returned whenever an OpenID protocol error occurs. Be prepared to use this in place of an ordinary server response. -
- Auth_OpenID_MalformedReturnURL - - An error indicating that the return_to URL is malformed. -
- Auth_OpenID_MalformedTrustRoot - - This error is returned when the trust_root value is malformed. -
- Auth_OpenID_PlainTextServerSession - - -
- Auth_OpenID_DiffieHellmanServerSession - - -
- Auth_OpenID_WebResponse - - A web-capable response object which you can use to generate a user-agent response. -
- Auth_OpenID_Signatory - - Responsible for the signature of query data and the verification of OpenID signature values. -
- Auth_OpenID_Encoder - - Encode an Auth_OpenID_Response to an Auth_OpenID_WebResponse. -
- Auth_OpenID_SigningEncoder - - An encoder which also takes care of signing fields when required. -
- Auth_OpenID_Decoder - - Decode an incoming Auth_OpenID_WebResponse into an Auth_OpenID_Request. -
- Auth_OpenID_EncodingError - - An error that indicates an encoding problem occurred. -
- Auth_OpenID_AlreadySigned - - An error that indicates that a response was already signed. -
- Auth_OpenID_UntrustedReturnURL - - An error that indicates that the given return_to is not under the given trust_root. -
- Auth_OpenID_Server - - An object that implements the OpenID protocol for a single URL. -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ("Auth/OpenID/DiffieHellman.php") - (line 98) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/KVForm.php") - (line 99) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/BigMath.php") - (line 97) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/TrustRoot.php") - (line 100) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/ServerRequest.php") - (line 101) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID.php") - (line 94) - -
- - -

Required imports

- -
- -
- -
- - require_once - ("Auth/OpenID/CryptUtil.php") - (line 96) - -
- - - -
- -
- -
- - require_once - ("Auth/OpenID/Association.php") - (line 95) - -
- - - -
-
-
- - -
-
Constants
- -
- -
- -
- - AUTH_OPENID_HTTP_ERROR = 400 - (line 105) - -
- - - - -
- -
- -
- - AUTH_OPENID_HTTP_OK = 200 - (line 103) - -
- - - - -
- -
- -
- - AUTH_OPENID_HTTP_REDIRECT = 302 - (line 104) - -
- - - - -
-
-
- - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---ServerRequest.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---ServerRequest.php.html deleted file mode 100644 index 4d7140efb..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID---ServerRequest.php.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - Docs for page ServerRequest.php - - - - -
-

/Auth/OpenID/ServerRequest.php

- - -
-
Description
- -
- -

OpenID Server Request

-
    -
  • author: JanRain, Inc. <openid@janrain.com>
  • -
  • copyright: 2005 Janrain, Inc.
  • -
  • see: Auth_OpenID_Server - - PHP versions 4 and 5 - - LICENSE: See the COPYING file included in this distribution.
  • -
  • license: LGPL
  • -
- -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Auth_OpenID_ServerRequest - - Object that holds the state of a request to the OpenID server -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ("Auth/OpenID.php") - (line 20) - -
- - -

Imports

- -
-
-
- - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID.php.html b/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID.php.html deleted file mode 100644 index 7be5fada5..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/_Auth---OpenID.php.html +++ /dev/null @@ -1,275 +0,0 @@ - - - - - - Docs for page OpenID.php - - - - -
-

/Auth/OpenID.php

- - -
-
Description
- -
- -

This is the PHP OpenID library by JanRain, Inc.

-

This module contains core utility functionality used by the library. See Consumer.php and Server.php for the consumer and server implementations.

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - - -
-
Includes
- -
- -
- -
- - require_once - ("Auth/OpenID/BigMath.php") - (line 25) - -
- - - -
- -
- -
- - require_once - ("Services/Yadis/PlainHTTPFetcher.php") - (line 23) - -
- - -

Require the fetcher code.

- -
- -
- -
- - require_once - ("Services/Yadis/ParanoidHTTPFetcher.php") - (line 24) - -
- - - -
-
-
- - -
-
Constants
- -
- -
- -
- - Auth_OpenID_digits = "0123456789" - (line 93) - -
- - - - -
- -
- -
- - Auth_OpenID_DO_ABOUT = 'do_about' - (line 85) - -
- - -

Status code returned when there were no OpenID arguments passed. This code indicates that the caller should return a 200 OK response and display an HTML page that says that this is an OpenID server endpoint.

- - - -
- -
- -
- - Auth_OpenID_DO_AUTH = 'do_auth' - (line 75) - -
- - -

Status code returned when the caller needs to authenticate the

-

user. The associated value is a Auth_OpenID_ServerRequest object that can be used to complete the authentication. If the user has taken some authentication action, use the retry() method of the Auth_OpenID_ServerRequest object to complete the request.

- - - -
- -
- -
- - Auth_OpenID_letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" - (line 90) - -
- - -

Defines for regexes and format checking.

- - -
- -
- -
- - Auth_OpenID_LOCAL_ERROR = 'local_error' - (line 35) - -
- - -

Status code returned by the server when the only option is to show an error page, since we do not have enough information to redirect back to the consumer. The associated value is an error message that should be displayed on an HTML error page.

- - - -
- -
- -
- - Auth_OpenID_NO_MATH_SUPPORT = true - (line 100) - -
- - - - -
- -
- -
- - Auth_OpenID_punct = "!!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~" - (line 96) - -
- - - - -
- -
- -
- - Auth_OpenID_REDIRECT = 'redirect' - (line 64) - -
- - -

Status code returned when there is a redirect back to the consumer. The value is the URL to redirect back to. The caller should return a 302 Found redirect with a Location: header containing the URL.

- - - -
- -
- -
- - Auth_OpenID_REMOTE_ERROR = 'remote_error' - (line 44) - -
- - -

Status code returned when there is an error to return in key-value form to the consumer. The caller should return a 400 Bad Request response with content-type text/plain and the value as the body.

- - - -
- -
- -
- - Auth_OpenID_REMOTE_OK = 'remote_ok' - (line 54) - -
- - -

Status code returned when there is a key-value form OK response to the consumer. The value associated with this code is the response. The caller should return a 200 OK response with content-type text/plain and the value as the body.

- - - -
-
-
- - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/OpenID/tutorial_OpenID.pkg.html b/modules/member/php-openid-1.2.3/doc/OpenID/tutorial_OpenID.pkg.html deleted file mode 100644 index f7ccd87d9..000000000 --- a/modules/member/php-openid-1.2.3/doc/OpenID/tutorial_OpenID.pkg.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - PHP OpenID API - - - - -
- -

PHP OpenID API

-
JanRain, Inc. -
- -

This is a complete implementation of the OpenID authentication - protocol. This package contains: - -

  • An OpenID server
  • -
  • An OpenID consumer
  • -
  • Stores for MySQL, PostgreSQL, SQLite, and filesystem-based OpenID data storage
  • -
  • PHPUnit unit tests
  • -
  • An example server and consumer

- -

For Package Users

To install this package, copy the Auth/ - directory in this package to a directory in your PHP include path. - Alternatively, modify your PHP include path to include the - directory that contains Auth/. Any - applications that need this package will then be able to use it.

- -

For Developers

See the server and consumer examples in the - examples/ directory of the package. For - details on how to run the examples, see - examples/README. If you want to create your - own OpenID data storage class, please see the Auth_OpenID_OpenIDStore - class.

- -

References

- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:26 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Auth_OpenID_ServiceEndpointLoader.html b/modules/member/php-openid-1.2.3/doc/Yadis/Auth_OpenID_ServiceEndpointLoader.html deleted file mode 100644 index 8fd1874c4..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Auth_OpenID_ServiceEndpointLoader.html +++ /dev/null @@ -1,186 +0,0 @@ - - - - - - Docs For Class Auth_OpenID_ServiceEndpointLoader - - - - -
-

Class Auth_OpenID_ServiceEndpointLoader

- - -
-
Description
- -
- -

A session helper class designed to translate between arrays and

-

objects. Note that the class used must have a constructor that takes no parameters. This is not a general solution, but it works for dumb objects that just need to have attributes set. The idea is that you'll subclass this and override $this->check($data) -> bool to implement your own session data validation.

-

- Located in /Services/Yadis/Manager.php (line 177) -

- - -
Services_Yadis_SessionLoader
-   |
-   --Auth_OpenID_ServiceEndpointLoader
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- void - check - ( $data) -
- -
- void - newObject - ( $data) -
- -
- void - requiredKeys - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- check (line 193) -
- - - -
- void - - check - - ( $data) -
- -
    -
  • - - $data
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_SessionLoader::check()
-
Override this.
-
- -
- -
- -
- newObject (line 178) -
- - - -
- void - - newObject - - ( $data) -
- -
    -
  • - - $data
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_SessionLoader::newObject()
-
Returns a new instance of this loader's class, using the session data to construct it if necessary. The object need only be created; $this->fromSession() will take care of setting the object's attributes.
-
- -
- -
- -
- requiredKeys (line 183) -
- - - -
- void - - requiredKeys - - () -
- - - -
-

Inherited Methods

- - -

Inherited From Services_Yadis_SessionLoader

-
- Services_Yadis_SessionLoader::check()
- Services_Yadis_SessionLoader::fromSession()
- Services_Yadis_SessionLoader::newObject()
- Services_Yadis_SessionLoader::prepareForLoad()
- Services_Yadis_SessionLoader::prepareForSave()
- Services_Yadis_SessionLoader::toSession()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Discovery.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Discovery.html deleted file mode 100644 index 4e8b121c0..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Discovery.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - Docs For Class Services_Yadis_Discovery - - - - -
-

Class Services_Yadis_Discovery

- - -
-
Description
- -
- -

State management for discovery.

-

High-level usage pattern is to call .getNextService(discover) in order to find the next available service for this user for this session. Once a request completes, call .finish() to clean up the session state.

-

- Located in /Services/Yadis/Manager.php (line 345) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Services_Yadis_Discovery - Services_Yadis_Discovery - ( &$session, string $url, [string $session_key_suffix = null], Services_Yadis_PHPSession $session) -
- -
- void - cleanup - () -
- -
- void - getNextService - ( $discover_cb,  &$fetcher) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Services_Yadis_Discovery (line 366) -
- - -

Initialize a discovery object.

- -
- Services_Yadis_Discovery - - Services_Yadis_Discovery - - ( &$session, string $url, [string $session_key_suffix = null], Services_Yadis_PHPSession $session) -
- -
    -
  • - Services_Yadis_PHPSession - $session: An object which implements the Services_Yadis_PHPSession API.
  • -
  • - string - $url: The URL on which to attempt discovery.
  • -
  • - string - $session_key_suffix: The optional session key suffix override.
  • -
  • - - &$session
  • -
- - -
- -
- -
- cleanup (line 414) -
- - -

Clean up Yadis-related services in the session and return the most-recently-attempted service from the manager, if one exists.

- -
- void - - cleanup - - () -
- - - -
- -
- -
- getNextService (line 384) -
- - -

Return the next authentication service for the pair of user_input and session. This function handles fallback.

- -
- void - - getNextService - - ( $discover_cb,  &$fetcher) -
- -
    -
  • - - $discover_cb
  • -
  • - - &$fetcher
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Manager.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Manager.html deleted file mode 100644 index 69e87f1fd..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Manager.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - Docs For Class Services_Yadis_Manager - - - - -
-

Class Services_Yadis_Manager

- - -
-
Description
- -
- -

The Yadis service manager which stores state in a session and iterates over <Service> elements in a Yadis XRDS document and lets a caller attempt to use each one. This is used by the Yadis library internally.

-

- Located in /Services/Yadis/Manager.php (line 252) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- void - nextService - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- nextService (line 295) -
- - -

Return the next service

-

$this->current() will continue to return that service until the next call to this method.

- -
- void - - nextService - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_ManagerLoader.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_ManagerLoader.html deleted file mode 100644 index 9c4ababad..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_ManagerLoader.html +++ /dev/null @@ -1,260 +0,0 @@ - - - - - - Docs For Class Services_Yadis_ManagerLoader - - - - -
-

Class Services_Yadis_ManagerLoader

- - -
-
Description
- -
- -

A session helper class designed to translate between arrays and

-

objects. Note that the class used must have a constructor that takes no parameters. This is not a general solution, but it works for dumb objects that just need to have attributes set. The idea is that you'll subclass this and override $this->check($data) -> bool to implement your own session data validation.

-

- Located in /Services/Yadis/Manager.php (line 199) -

- - -
Services_Yadis_SessionLoader
-   |
-   --Services_Yadis_ManagerLoader
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- void - check - ( $data) -
- -
- void - newObject - ( $data) -
- -
- void - prepareForLoad - ( $data) -
- -
- void - prepareForSave - ( $obj) -
- -
- void - requiredKeys - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- check (line 218) -
- - - -
- void - - check - - ( $data) -
- -
    -
  • - - $data
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_SessionLoader::check()
-
Override this.
-
- -
- -
- -
- newObject (line 210) -
- - - -
- void - - newObject - - ( $data) -
- -
    -
  • - - $data
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_SessionLoader::newObject()
-
Returns a new instance of this loader's class, using the session data to construct it if necessary. The object need only be created; $this->fromSession() will take care of setting the object's attributes.
-
- -
- -
- -
- prepareForLoad (line 223) -
- - - -
- void - - prepareForLoad - - ( $data) -
- -
    -
  • - - $data
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_SessionLoader::prepareForLoad()
-
Prepares the data array by making any necessary changes.
-
- -
- -
- -
- prepareForSave (line 233) -
- - - -
- void - - prepareForSave - - ( $obj) -
- -
    -
  • - - $obj
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_SessionLoader::prepareForSave()
-
Override this.
-
- -
- -
- -
- requiredKeys (line 200) -
- - - -
- void - - requiredKeys - - () -
- - - -
-

Inherited Methods

- - -

Inherited From Services_Yadis_SessionLoader

-
- Services_Yadis_SessionLoader::check()
- Services_Yadis_SessionLoader::fromSession()
- Services_Yadis_SessionLoader::newObject()
- Services_Yadis_SessionLoader::prepareForLoad()
- Services_Yadis_SessionLoader::prepareForSave()
- Services_Yadis_SessionLoader::toSession()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_PHPSession.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_PHPSession.html deleted file mode 100644 index cfcb7de4e..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_PHPSession.html +++ /dev/null @@ -1,203 +0,0 @@ - - - - - - Docs For Class Services_Yadis_PHPSession - - - - -
-

Class Services_Yadis_PHPSession

- - -
-
Description
- -
- -

The base session class used by the Services_Yadis_Manager. This class wraps the default PHP session machinery and should be subclassed if your application doesn't use PHP sessioning.

-

- Located in /Services/Yadis/Manager.php (line 17) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- void - contents - () -
- -
- void - del - (string $name) -
- -
- string - get - (string $name, [string $default = null]) -
- -
- void - set - (string $name, string $value) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- contents (line 60) -
- - -

Return the contents of the session in array form.

- -
- void - - contents - - () -
- - - -
- -
- -
- del (line 52) -
- - -

Remove a key/value pair from the session.

- -
- void - - del - - (string $name) -
- -
    -
  • - string - $name: The name of the key to remove.
  • -
- - -
- -
- -
- get (line 38) -
- - -

Get a key's value from the session.

-
    -
  • return: The key's value in the session or $default if it isn't found.
  • -
- -
- string - - get - - (string $name, [string $default = null]) -
- -
    -
  • - string - $name: The name of the key to retrieve.
  • -
  • - string - $default: The optional value to return if the key is not found in the session.
  • -
- - -
- -
- -
- set (line 24) -
- - -

Set a session key/value pair.

- -
- void - - set - - (string $name, string $value) -
- -
    -
  • - string - $name: The name of the session key to add.
  • -
  • - string - $value: The value to add to the session.
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Service.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Service.html deleted file mode 100644 index 55588735f..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Service.html +++ /dev/null @@ -1,225 +0,0 @@ - - - - - - Docs For Class Services_Yadis_Service - - - - -
-

Class Services_Yadis_Service

- - -
-
Description
- -
- -

This class represents a <Service> element in an XRDS document.

-

Objects of this type are returned by Services_Yadis_XRDS::services() and Services_Yadis_Yadis::services(). Each object corresponds directly to a <Service> element in the XRDS and supplies a getElements($name) method which you should use to inspect the element's contents. See Services_Yadis_Yadis for more information on the role this class plays in Yadis discovery.

-

- Located in /Services/Yadis/XRDS.php (line 73) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Services_Yadis_Service - Services_Yadis_Service - () -
- -
- array - getElements - (string $name) -
- -
- mixed - getPriority - () -
- -
- array - getTypes - () -
- -
- array - getURIs - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Services_Yadis_Service (line 78) -
- - -

Creates an empty service object.

- -
- Services_Yadis_Service - - Services_Yadis_Service - - () -
- - - -
- -
- -
- getElements (line 178) -
- - -

Used to get XML elements from this object's <Service> element.

-

This is what you should use to get all custom information out of this element. This is used by service filter functions to determine whether a service element contains specific tags, etc. NOTE: this only considers elements which are direct children of the <Service> element for this object.

-
    -
  • return: An array of elements with the specified name which are direct children of the <Service> element. The nodes returned by this function can be passed to $this->parser methods (see Services_Yadis_XMLParser).
  • -
- -
- array - - getElements - - (string $name) -
- -
    -
  • - string - $name: The name of the element to look for
  • -
- - -
- -
- -
- getPriority (line 152) -
- - -

Returns the "priority" attribute value of this <Service> element, if the attribute is present. Returns null if not.

-
    -
  • return: Null or integer, depending on whether this Service element has a 'priority' attribute.
  • -
- -
- mixed - - getPriority - - () -
- - - -
- -
- -
- getTypes (line 90) -
- - -

Return the URIs in the "Type" elements, if any, of this Service element.

-
    -
  • return: An array of Type URI strings.
  • -
- -
- array - - getTypes - - () -
- - - -
- -
- -
- getURIs (line 108) -
- - -

Return the URIs in the "URI" elements, if any, of this Service element. The URIs are returned sorted in priority order.

-
    -
  • return: An array of URI strings.
  • -
- -
- array - - getURIs - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:31 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_SessionLoader.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_SessionLoader.html deleted file mode 100644 index 18c2c4f23..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_SessionLoader.html +++ /dev/null @@ -1,333 +0,0 @@ - - - - - - Docs For Class Services_Yadis_SessionLoader - - - - -
-

Class Services_Yadis_SessionLoader

- - -
-
Description
- -
- -

A session helper class designed to translate between arrays and

-

objects. Note that the class used must have a constructor that takes no parameters. This is not a general solution, but it works for dumb objects that just need to have attributes set. The idea is that you'll subclass this and override $this->check($data) -> bool to implement your own session data validation.

-

- Located in /Services/Yadis/Manager.php (line 74) -

- - -

-	
-			
-
- - -
-
Direct descendents
- -
- - - - - - - - - - - - - -
ClassDescription
Auth_OpenID_ServiceEndpointLoader - A session helper class designed to translate between arrays and -
Services_Yadis_ManagerLoader - A session helper class designed to translate between arrays and -
-
-
- - - - -
-
Method Summary
- -
-
- -
- void - check - ( $data) -
- -
- void - fromSession - ( $data) -
- -
- void - newObject - ( $data) -
- -
- void - prepareForLoad - ( $data) -
- -
- void - prepareForSave - ( $obj) -
- -
- void - toSession - ( $obj) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- check (line 78) -
- - -

Override this.

- -
- void - - check - - ( $data) -
- -
    -
  • - - $data
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- fromSession (line 91) -
- - -

Given a session data value (an array), this creates an object

-

(returned by $this->newObject()) whose attributes and values are those in $data. Returns null if $data lacks keys found in $this->requiredKeys(). Returns null if $this->check($data) evaluates to false. Returns null if $this->newObject() evaluates to false.

- -
- void - - fromSession - - ( $data) -
- -
    -
  • - - $data
  • -
- - -
- -
- -
- newObject (line 139) -
- - -

Returns a new instance of this loader's class, using the session data to construct it if necessary. The object need only be created; $this->fromSession() will take care of setting the object's attributes.

- -
- void - - newObject - - ( $data) -
- -
    -
  • - - $data
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- prepareForLoad (line 128) -
- - -

Prepares the data array by making any necessary changes.

-

Returns an array whose keys and values will be used to update the original data array before calling $this->newObject($data).

- -
- void - - prepareForLoad - - ( $data) -
- -
    -
  • - - $data
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- prepareForSave (line 171) -
- - -

Override this.

- -
- void - - prepareForSave - - ( $obj) -
- -
    -
  • - - $obj
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- toSession (line 150) -
- - -

Returns an array of keys and values built from the attributes of $obj. If $this->prepareForSave($obj) returns an array, its keys and values are used to update the $data array of attributes from $obj.

- -
- void - - toSession - - ( $obj) -
- -
    -
  • - - $obj
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_XMLParser.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_XMLParser.html deleted file mode 100644 index 6e1411660..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_XMLParser.html +++ /dev/null @@ -1,374 +0,0 @@ - - - - - - Docs For Class Services_Yadis_XMLParser - - - - -
-

Class Services_Yadis_XMLParser

- - -
-
Description
- -
- -

The base class for wrappers for available PHP XML-parsing

-

extensions. To work with this Yadis library, subclasses of this class MUST implement the API as defined in the remarks for this class. Subclasses of Services_Yadis_XMLParser are used to wrap particular PHP XML extensions such as 'domxml'. These are used internally by the library depending on the availability of supported PHP XML extensions.

-

- Located in /Services/Yadis/XML.php (line 21) -

- - -

-	
-			
-
- - -
-
Direct descendents
- -
- - - - - - - - - - - - - -
ClassDescription
Services_Yadis_domxml - This concrete implementation of Services_Yadis_XMLParser implements -
Services_Yadis_dom - This concrete implementation of Services_Yadis_XMLParser implements -
-
-
- - - - -
-
Method Summary
- -
-
- -
- array - attributes - (mixed $node) -
- -
- string - content - (mixed $node) -
- -
- array - evalXPath - (string $xpath, [mixed $node = null]) -
- -
- boolean - init - (string $xml_string, array $namespace_map) -
- -
- boolean - registerNamespace - (string $prefix, string $uri) -
- -
- boolean - setXML - (string $xml_string) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- attributes (line 121) -
- - -

Return the attributes of a specified node.

-
    -
  • return: An array mapping attribute names to values.
  • -
- -
- array - - attributes - - (mixed $node) -
- -
    -
  • - mixed - $node: A node object from a previous call to $this->evalXPath().
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- content (line 107) -
- - -

Return the textual content of a specified node.

-
    -
  • return: The content of this node.
  • -
- -
- string - - content - - (mixed $node) -
- -
    -
  • - mixed - $node: A node object from a previous call to $this->evalXPath().
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- evalXPath (line 94) -
- - -

Evaluate an XPath expression and return the resulting node list. This should be overridden by subclasses.

-
    -
  • return: An array of matching opaque node objects to be used with other methods of this parser class.
  • -
- -
- array - - evalXPath - - (string $xpath, [mixed $node = null]) -
- -
    -
  • - string - $xpath: The XPath expression to be evaluated.
  • -
  • - mixed - $node: A node object resulting from a previous evalXPath call. This node, if specified, provides the context for the evaluation of this xpath expression.
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- init (line 33) -
- - -

Initialize an instance of Services_Yadis_XMLParser with some XML and namespaces. This SHOULD NOT be overridden by subclasses.

-
    -
  • return: True if the initialization and namespace registration(s) succeeded; false otherwise.
  • -
- -
- boolean - - init - - (string $xml_string, array $namespace_map) -
- -
    -
  • - string - $xml_string: A string of XML to be parsed.
  • -
  • - array - $namespace_map: An array of ($ns_name => $ns_uri) to be registered with the XML parser. May be empty.
  • -
- - -
- -
- -
- registerNamespace (line 61) -
- - -

Register a namespace with the XML parser. This should be overridden by subclasses.

-
    -
  • return: True if the registration succeeded; false otherwise.
  • -
- -
- boolean - - registerNamespace - - (string $prefix, string $uri) -
- -
    -
  • - string - $prefix: The namespace prefix to appear in XML tag names.
  • -
  • - string - $uri: The namespace URI to be used to identify the namespace in the XML.
  • -
- - -
-
Redefined in descendants as:
- -
- -
- -
- setXML (line 76) -
- - -

Set this parser object's XML payload. This should be overridden by subclasses.

-
    -
  • return: True if the initialization succeeded; false otherwise.
  • -
- -
- boolean - - setXML - - (string $xml_string) -
- -
    -
  • - string - $xml_string: The XML string to pass to this object's XML parser.
  • -
- - -
-
Redefined in descendants as:
- -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_XRDS.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_XRDS.html deleted file mode 100644 index bdfe6a20c..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_XRDS.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - Docs For Class Services_Yadis_XRDS - - - - -
-

Class Services_Yadis_XRDS

- - -
-
Description
- -
- -

This class performs parsing of XRDS documents.

-

You should not instantiate this class directly; rather, call parseXRDS statically:

  $xrds = Services_Yadis_XRDS::parseXRDS($xml_string);

If the XRDS can be parsed and is valid, an instance of Services_Yadis_XRDS will be returned. Otherwise, null will be returned. This class is used by the Services_Yadis_Yadis::discover method.

-

- Located in /Services/Yadis/XRDS.php (line 199) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Services_Yadis_XRDS - Services_Yadis_XRDS - ( &$xmlParser,  &$xrdNodes) -
- -
- mixed - &parseXRDS - (string $xml_string, [ $extra_ns_map = null]) -
- -
- mixed - services - ([mixed $filters = null], [integer $filter_mode = SERVICES_YADIS_MATCH_ANY]) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Services_Yadis_XRDS (line 205) -
- - -

Instantiate a Services_Yadis_XRDS object. Requires an XPath instance which has been used to parse a valid XRDS document.

- -
- Services_Yadis_XRDS - - Services_Yadis_XRDS - - ( &$xmlParser,  &$xrdNodes) -
- -
    -
  • - - &$xmlParser
  • -
  • - - &$xrdNodes
  • -
- - -
- -
- -
- parseXRDS (line 223) -
- - -

Parse an XML string (XRDS document) and return either a Services_Yadis_XRDS object or null, depending on whether the XRDS XML is valid.

-
    -
  • return: An instance of Services_Yadis_XRDS or null, depending on the validity of $xml_string
  • -
- -
- mixed - - &parseXRDS - - (string $xml_string, [ $extra_ns_map = null]) -
- -
    -
  • - string - $xml_string: An XRDS XML string.
  • -
  • - - $extra_ns_map
  • -
- - -
- -
- -
- services (line 340) -
- - -

Returns a list of service objects which correspond to <Service> elements in the XRDS XML document for this object.

-

Optionally, an array of filter callbacks may be given to limit the list of returned service objects. Furthermore, the default mode is to return all service objects which match ANY of the specified filters, but $filter_mode may be SERVICES_YADIS_MATCH_ALL if you want to be sure that the returned services match all the given filters. See Services_Yadis_Yadis for detailed usage information on filter functions.

-
    -
  • return: An array of Services_Yadis_Service objects if $filter_mode is a valid mode; null if $filter_mode is an invalid mode (i.e., not SERVICES_YADIS_MATCH_ANY or SERVICES_YADIS_MATCH_ALL).
  • -
- -
- mixed - - services - - ([mixed $filters = null], [integer $filter_mode = SERVICES_YADIS_MATCH_ANY]) -
- -
    -
  • - mixed - $filters: An array of callbacks to filter the returned services, or null if all services are to be returned.
  • -
  • - integer - $filter_mode: SERVICES_YADIS_MATCH_ALL or SERVICES_YADIS_MATCH_ANY, depending on whether the returned services should match ALL or ANY of the specified filters, respectively.
  • -
- - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:31 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Yadis.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Yadis.html deleted file mode 100644 index a6aef8c86..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_Yadis.html +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - Docs For Class Services_Yadis_Yadis - - - - -
-

Class Services_Yadis_Yadis

- - -
-
Description
- -
- -

This is the core of the PHP Yadis library. This is the only class a user needs to use to perform Yadis discovery. This class performs the discovery AND stores the result of the discovery.

-

First, require this library into your program source:

  require_once "Services/Yadis/Yadis.php";

To perform Yadis discovery, first call the "discover" method statically with a URI parameter:

  $http_response = array();
-  $fetcher = Services_Yadis_Yadis::getHTTPFetcher();
-  $yadis_object = Services_Yadis_Yadis::discover($uri,
-                                    $http_response, $fetcher);

If the discovery succeeds, $yadis_object will be an instance of Services_Yadis_Yadis. If not, it will be null. The XRDS document found during discovery should have service descriptions, which can be accessed by calling

  $service_list = $yadis_object->services();

which returns an array of objects which describe each service. These objects are instances of Services_Yadis_Service. Each object describes exactly one whole Service element, complete with all of its Types and URIs (no expansion is performed). The common use case for using the service objects returned by services() is to write one or more filter functions and pass those to services():

  $service_list = $yadis_object->services(
-                               array("filterByURI",
-                                     "filterByExtension"));

The filter functions (whose names appear in the array passed to services()) take the following form:

  function myFilter(&$service) {
-       // Query $service object here.  Return true if the service
-       // matches your query; false if not.
-  }

This is an example of a filter which uses a regular expression to match the content of URI tags (note that the Services_Yadis_Service class provides a getURIs() method which you should use instead of this contrived example):

  function URIMatcher(&$service) {
-      foreach ($service->getElements('xrd:URI') as $uri) {
-          if (preg_match("/some_pattern/",
-                         $service->parser->content($uri))) {
-              return true;
-          }
-      }
-      return false;
-  }

The filter functions you pass will be called for each service object to determine which ones match the criteria your filters specify. The default behavior is that if a given service object matches ANY of the filters specified in the services() call, it will be returned. You can specify that a given service object will be returned ONLY if it matches ALL specified filters by changing the match mode of services():

  $yadis_object->services(array("filter1", "filter2"),
-                          SERVICES_YADIS_MATCH_ALL);

See SERVICES_YADIS_MATCH_ALL and SERVICES_YADIS_MATCH_ANY.

Services described in an XRDS should have a library which you'll probably be using. Those libraries are responsible for defining filters that can be used with the "services()" call. If you need to write your own filter, see the documentation for Services_Yadis_Service.

-

- Located in /Services/Yadis/Yadis.php (line 114) -

- - -

-	
-			
-
- - - - - -
-
Method Summary
- -
-
- -
- Services_Yadis_Yadis - Services_Yadis_Yadis - () -
- -
- void - curlPresent - () -
- -
- mixed - discover - (string $uri,  &$http_response,  &$fetcher, [array $extra_ns_map = null], [integer $timeout = 20], array $http_response, Services_Yadis_HTTPFetcher $fetcher) -
- -
- void - getHTTPFetcher - ([ $timeout = 20]) -
- -
- array - services - () -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Services_Yadis_Yadis (line 285) -
- - -

Instantiates an empty Services_Yadis_Yadis object. This constructor should not be used by any user of the library.

-

This constructor results in a completely useless object which must be populated with valid discovery information. Instead of using this constructor, call Services_Yadis_Yadis::discover($uri).

- -
- Services_Yadis_Yadis - - Services_Yadis_Yadis - - () -
- - - -
- -
- -
- curlPresent (line 132) -
- - - -
- void - - curlPresent - - () -
- - - -
- -
- -
- discover (line 188) -
- - -

This should be called statically and will build a Yadis instance if the discovery process succeeds. This implements Yadis discovery as specified in the Yadis specification.

-
    -
  • return: Either null or an instance of Services_Yadis_Yadis, depending on whether the discovery succeeded.
  • -
- -
- mixed - - discover - - (string $uri,  &$http_response,  &$fetcher, [array $extra_ns_map = null], [integer $timeout = 20], array $http_response, Services_Yadis_HTTPFetcher $fetcher) -
- -
    -
  • - string - $uri: The URI on which to perform Yadis discovery.
  • -
  • - array - $http_response: An array reference where the HTTP response object will be stored (see Services_Yadis_HTTPResponse.
  • -
  • - Services_Yadis_HTTPFetcher - $fetcher: An instance of a Services_Yadis_HTTPFetcher subclass.
  • -
  • - array - $extra_ns_map: An array which maps namespace names to namespace URIs to be used when parsing the Yadis XRDS document.
  • -
  • - integer - $timeout: An optional fetcher timeout, in seconds.
  • -
  • - - &$http_response
  • -
  • - - &$fetcher
  • -
- - -
- -
- -
- getHTTPFetcher (line 122) -
- - -

Returns an HTTP fetcher object. If the CURL extension is present, an instance of Services_Yadis_ParanoidHTTPFetcher is returned. If not, an instance of Services_Yadis_PlainHTTPFetcher is returned.

- -
- void - - getHTTPFetcher - - ([ $timeout = 20]) -
- -
    -
  • - - $timeout
  • -
- - -
- -
- -
- services (line 303) -
- - -

Returns the list of service objects as described by the XRDS document, if this yadis object represents a successful Yadis discovery.

- - -
- array - - services - - () -
- - - -
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:31 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_dom.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_dom.html deleted file mode 100644 index 74c267ea1..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_dom.html +++ /dev/null @@ -1,303 +0,0 @@ - - - - - - Docs For Class Services_Yadis_dom - - - - -
-

Class Services_Yadis_dom

- - -
-
Description
- -
- -

This concrete implementation of Services_Yadis_XMLParser implements

-

the appropriate API for the 'dom' extension which is typically packaged with PHP 5. This class will be used whenever the 'dom' extension is detected. See the Services_Yadis_XMLParser class for details on this class's methods.

-

- Located in /Services/Yadis/XML.php (line 214) -

- - -
Services_Yadis_XMLParser
-   |
-   --Services_Yadis_dom
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- Services_Yadis_dom - Services_Yadis_dom - () -
- -
- void - attributes - ( $node) -
- -
- void - content - ( $node) -
- -
- void - &evalXPath - ( $xpath, [ $node = null]) -
- -
- void - registerNamespace - ( $prefix,  $uri) -
- -
- void - setXML - ( $xml_string) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Services_Yadis_dom (line 215) -
- - - -
- Services_Yadis_dom - - Services_Yadis_dom - - () -
- - - -
- -
- -
- attributes (line 274) -
- - - -
- void - - attributes - - ( $node) -
- -
    -
  • - - $node
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::attributes()
-
Return the attributes of a specified node.
-
- -
- -
- -
- content (line 267) -
- - - -
- void - - content - - ( $node) -
- -
    -
  • - - $node
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::content()
-
Return the textual content of a specified node.
-
- -
- -
- -
- evalXPath (line 250) -
- - - -
- void - - &evalXPath - - ( $xpath, [ $node = null]) -
- -
    -
  • - - $xpath
  • -
  • - - $node
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::evalXPath()
-
Evaluate an XPath expression and return the resulting node list. This should be overridden by subclasses.
-
- -
- -
- -
- registerNamespace (line 245) -
- - - -
- void - - registerNamespace - - ( $prefix,  $uri) -
- -
    -
  • - - $prefix
  • -
  • - - $uri
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::registerNamespace()
-
Register a namespace with the XML parser. This should be overridden by subclasses.
-
- -
- -
- -
- setXML (line 223) -
- - - -
- void - - setXML - - ( $xml_string) -
- -
    -
  • - - $xml_string
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::setXML()
-
Set this parser object's XML payload. This should be overridden by subclasses.
-
- -
-

Inherited Methods

- - -

Inherited From Services_Yadis_XMLParser

-
- Services_Yadis_XMLParser::attributes()
- Services_Yadis_XMLParser::content()
- Services_Yadis_XMLParser::evalXPath()
- Services_Yadis_XMLParser::init()
- Services_Yadis_XMLParser::registerNamespace()
- Services_Yadis_XMLParser::setXML()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_domxml.html b/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_domxml.html deleted file mode 100644 index 89589b752..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/Services_Yadis_domxml.html +++ /dev/null @@ -1,303 +0,0 @@ - - - - - - Docs For Class Services_Yadis_domxml - - - - -
-

Class Services_Yadis_domxml

- - -
-
Description
- -
- -

This concrete implementation of Services_Yadis_XMLParser implements

-

the appropriate API for the 'domxml' extension which is typically packaged with PHP 4. This class will be used whenever the 'domxml' extension is detected. See the Services_Yadis_XMLParser class for details on this class's methods.

-

- Located in /Services/Yadis/XML.php (line 136) -

- - -
Services_Yadis_XMLParser
-   |
-   --Services_Yadis_domxml
- -
-
- - - - - -
-
Method Summary
- -
-
- -
- Services_Yadis_domxml - Services_Yadis_domxml - () -
- -
- void - attributes - ( $node) -
- -
- void - content - ( $node) -
- -
- void - &evalXPath - ( $xpath, [ $node = null]) -
- -
- void - registerNamespace - ( $prefix,  $uri) -
- -
- void - setXML - ( $xml_string) -
-
-
-
- - - -
-
Methods
- -
- - -
- -
- Constructor Services_Yadis_domxml (line 137) -
- - - -
- Services_Yadis_domxml - - Services_Yadis_domxml - - () -
- - - -
- -
- -
- attributes (line 188) -
- - - -
- void - - attributes - - ( $node) -
- -
    -
  • - - $node
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::attributes()
-
Return the attributes of a specified node.
-
- -
- -
- -
- content (line 181) -
- - - -
- void - - content - - ( $node) -
- -
    -
  • - - $node
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::content()
-
Return the textual content of a specified node.
-
- -
- -
- -
- evalXPath (line 165) -
- - - -
- void - - &evalXPath - - ( $xpath, [ $node = null]) -
- -
    -
  • - - $xpath
  • -
  • - - $node
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::evalXPath()
-
Evaluate an XPath expression and return the resulting node list. This should be overridden by subclasses.
-
- -
- -
- -
- registerNamespace (line 160) -
- - - -
- void - - registerNamespace - - ( $prefix,  $uri) -
- -
    -
  • - - $prefix
  • -
  • - - $uri
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::registerNamespace()
-
Register a namespace with the XML parser. This should be overridden by subclasses.
-
- -
- -
- -
- setXML (line 145) -
- - - -
- void - - setXML - - ( $xml_string) -
- -
    -
  • - - $xml_string
  • -
- -
-
Redefinition of:
-
-
Services_Yadis_XMLParser::setXML()
-
Set this parser object's XML payload. This should be overridden by subclasses.
-
- -
-

Inherited Methods

- - -

Inherited From Services_Yadis_XMLParser

-
- Services_Yadis_XMLParser::attributes()
- Services_Yadis_XMLParser::content()
- Services_Yadis_XMLParser::evalXPath()
- Services_Yadis_XMLParser::init()
- Services_Yadis_XMLParser::registerNamespace()
- Services_Yadis_XMLParser::setXML()
-
- -
-
- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---Manager.php.html b/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---Manager.php.html deleted file mode 100644 index 828e09264..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---Manager.php.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - Docs for page Manager.php - - - - -
-

/Services/Yadis/Manager.php

- - -
-
Description
- -
- -

Yadis service manager to be used during yadis-driven authentication attempts.

- -
-
- - -
-
Classes
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassDescription
- Services_Yadis_PHPSession - - The base session class used by the Services_Yadis_Manager. This class wraps the default PHP session machinery and should be subclassed if your application doesn't use PHP sessioning. -
- Services_Yadis_SessionLoader - - A session helper class designed to translate between arrays and -
- Auth_OpenID_ServiceEndpointLoader - - A session helper class designed to translate between arrays and -
- Services_Yadis_ManagerLoader - - A session helper class designed to translate between arrays and -
- Services_Yadis_Manager - - The Yadis service manager which stores state in a session and iterates over <Service> elements in a Yadis XRDS document and lets a caller attempt to use each one. This is used by the Yadis library internally. -
- Services_Yadis_Discovery - - State management for discovery. -
-
-
- - - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:29 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---XML.php.html b/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---XML.php.html deleted file mode 100644 index 6338411b6..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---XML.php.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - Docs for page XML.php - - - - -
-

/Services/Yadis/XML.php

- - -
-
Description
- -
- -

XML-parsing classes to wrap the domxml and DOM extensions for PHP 4 and 5, respectively.

- -
-
- - -
-
Classes
- -
- - - - - - - - - - - - - - - - - -
ClassDescription
- Services_Yadis_XMLParser - - The base class for wrappers for available PHP XML-parsing -
- Services_Yadis_domxml - - This concrete implementation of Services_Yadis_XMLParser implements -
- Services_Yadis_dom - - This concrete implementation of Services_Yadis_XMLParser implements -
-
-
- - - - - -
-
Functions
- -
- -
- -
- Services_Yadis_getSupportedExtensions (line 310) -
- - - -
- void - - Services_Yadis_getSupportedExtensions - - () -
- - - -
- -
- -
- Services_Yadis_getXMLParser (line 326) -
- - -

Returns an instance of a Services_Yadis_XMLParser subclass based on the availability of PHP extensions for XML parsing. If Services_Yadis_setDefaultParser has been called, the parser used in that call will be returned instead.

- -
- void - - &Services_Yadis_getXMLParser - - () -
- - - -
- -
- -
- Services_Yadis_setDefaultParser (line 304) -
- - -

Set a default parser to override the extension-driven selection of available parser classes. This is helpful in a test environment or one in which multiple parsers can be used but one is more desirable.

- -
- void - - Services_Yadis_setDefaultParser - - ( &$parser, Services_Yadis_XMLParser $parser) -
- - - - -
-
-
- -

- Documentation generated on Mon, 10 Sep 2007 13:29:30 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---XRDS.php.html b/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---XRDS.php.html deleted file mode 100644 index b5e75e4fd..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---XRDS.php.html +++ /dev/null @@ -1,200 +0,0 @@ - - - - - - Docs for page XRDS.php - - - - -
-

/Services/Yadis/XRDS.php

- - -
-
Description
- -
- -

This module contains the XRDS parsing code.

-

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - - - - - -
ClassDescription
- Services_Yadis_Service - - This class represents a <Service> element in an XRDS document. -
- Services_Yadis_XRDS - - This class performs parsing of XRDS documents. -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ('Services/Yadis/XML.php') - (line 19) - -
- - -

Require the XPath implementation.

- -
-
-
- - -
-
Constants
- -
- -
- -
- - SERVICES_YADIS_MATCH_ALL = 101 - (line 25) - -
- - -

This match mode means a given service must match ALL filters passed to the Services_Yadis_XRDS::services() call.

- - -
- -
- -
- - SERVICES_YADIS_MATCH_ANY = 102 - (line 31) - -
- - -

This match mode means a given service must match ANY filters (at least one) passed to the Services_Yadis_XRDS::services() call.

- - -
- -
- -
- - SERVICES_YADIS_MAX_PRIORITY = pow(2,30) - (line 37) - -
- - -

The priority value used for service elements with no priority specified.

- - -
-
-
- - - -
-
Functions
- -
- -
- -
- Services_Yadis_getNSMap (line 39) -
- - - -
- void - - Services_Yadis_getNSMap - - () -
- - - -
-
-
- -

- Documentation generated on Mon, 10 Sep 2007 13:29:31 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---Yadis.php.html b/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---Yadis.php.html deleted file mode 100644 index 354728d10..000000000 --- a/modules/member/php-openid-1.2.3/doc/Yadis/_Services---Yadis---Yadis.php.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - Docs for page Yadis.php - - - - -
-

/Services/Yadis/Yadis.php

- - -
-
Description
- -
- -

The core PHP Yadis implementation.

-

PHP versions 4 and 5

LICENSE: See the COPYING file included in this distribution.

- - -
-
- - -
-
Classes
- -
- - - - - - - - - -
ClassDescription
- Services_Yadis_Yadis - - This is the core of the PHP Yadis library. This is the only class a user needs to use to perform Yadis discovery. This class performs the discovery AND stores the result of the discovery. -
-
-
- - -
-
Includes
- -
- -
- -
- - require_once - ("Services/Yadis/PlainHTTPFetcher.php") - (line 20) - -
- - -

Need both fetcher types so we can use the right one based on the presence or absence of CURL.

- -
- -
- -
- - require_once - ("Services/Yadis/ParanoidHTTPFetcher.php") - (line 21) - -
- - - -
- -
- -
- - require_once - ("Services/Yadis/ParseHTML.php") - (line 26) - -
- - -

Need this for parsing HTML (looking for META tags).

- -
- -
- -
- - require_once - ("Services/Yadis/XRDS.php") - (line 31) - -
- - -

Need this to parse the XRDS document during Yadis discovery.

- -
-
-
- - - - -

- Documentation generated on Mon, 10 Sep 2007 13:29:31 -0700 by phpDocumentor 1.3.2 -

-
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/classtrees_OpenID.html b/modules/member/php-openid-1.2.3/doc/classtrees_OpenID.html deleted file mode 100644 index fdffa63bc..000000000 --- a/modules/member/php-openid-1.2.3/doc/classtrees_OpenID.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - - - - - - - -

- -

-

Root class Auth_OpenID_Association

- - -

Root class Auth_OpenID_AuthRequest

- - -

Root class Auth_OpenID_Consumer

- - -

Root class Auth_OpenID_ConsumerResponse

- - -

Root class Auth_OpenID_DatabaseConnection

- - -

Root class Auth_OpenID_Decoder

- - -

Root class Auth_OpenID_DiffieHellmanConsumerSession

- - -

Root class Auth_OpenID_DiffieHellmanServerSession

- - -

Root class Auth_OpenID_Encoder

- - -

Root class Auth_OpenID_EncodingError

- - -

Root class Auth_OpenID_OpenIDStore

- - -

Root class Auth_OpenID_PlainTextConsumerSession

- - -

Root class Auth_OpenID_PlainTextServerSession

- - -

Root class Auth_OpenID_Server

- - -

Root class Auth_OpenID_ServerError

- - -

Root class Auth_OpenID_ServerRequest

- - -

Root class Auth_OpenID_Signatory

- - -

Root class Auth_OpenID_WebResponse

- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:27 -0700 by phpDocumentor 1.3.2 -

- - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/classtrees_Yadis.html b/modules/member/php-openid-1.2.3/doc/classtrees_Yadis.html deleted file mode 100644 index 600e2b521..000000000 --- a/modules/member/php-openid-1.2.3/doc/classtrees_Yadis.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - -

- -

-

Root class Services_Yadis_Discovery

- - -

Root class Services_Yadis_Manager

- - -

Root class Services_Yadis_PHPSession

- - -

Root class Services_Yadis_Service

- - -

Root class Services_Yadis_SessionLoader

- - -

Root class Services_Yadis_XMLParser

- - -

Root class Services_Yadis_XRDS

- - -

Root class Services_Yadis_Yadis

- - -

- Documentation generated on Mon, 10 Sep 2007 13:29:27 -0700 by phpDocumentor 1.3.2 -

- - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/elementindex.html b/modules/member/php-openid-1.2.3/doc/elementindex.html deleted file mode 100644 index 791a66d88..000000000 --- a/modules/member/php-openid-1.2.3/doc/elementindex.html +++ /dev/null @@ -1,1998 +0,0 @@ - - - - - - - - - - - -

Full index

-

Package indexes

- -
-
- a - b - c - d - e - f - g - h - i - m - n - o - p - q - r - s - t - u - v - w - x - y -
- - -
-
a
- -
-
-
-
- $AUTH_KEY_LEN -
-
- -
-
- addExtensionArg -
-
- -
Add an extension argument to this OpenID authentication request.
-
-
- answer -
-
- -
-
- answer -
-
- -
-
- attributes -
-
- -
-
- attributes -
-
- -
Return the attributes of a specified node.
-
-
- attributes -
-
- -
-
- Association.php -
-
-
Association.php in Association.php
-
-
- Auth_OpenID_AlreadySigned -
-
- -
An error that indicates that a response was already signed.
-
-
- Auth_OpenID_Association -
-
-
Auth_OpenID_Association in Association.php
-
This class represents an association between a server and a consumer. In general, users of this library will never see instances of this object. The only exception is if you implement a custom Auth_OpenID_OpenIDStore.
-
-
- Auth_OpenID_AuthRequest -
-
-
Auth_OpenID_AuthRequest in Consumer.php
-
This class represents an authentication request from a consumer to an OpenID server.
-
-
- Auth_OpenID_AuthRequest -
-
- -
Initialize an authentication request with the specified token, association, and endpoint.
-
-
- Auth_OpenID_CANCEL -
-
-
Auth_OpenID_CANCEL in Consumer.php
-
Status to indicate cancellation of OpenID authentication.
-
-
- Auth_OpenID_CancelResponse -
-
- -
A response with a status of Auth_OpenID_CANCEL. Indicates that the user cancelled the OpenID authentication request. This has two relevant attributes:
-
-
- Auth_OpenID_CancelResponse -
-
- -
-
- Auth_OpenID_Consumer -
-
- -
Initialize a Consumer instance.
-
-
- Auth_OpenID_Consumer -
-
-
Auth_OpenID_Consumer in Consumer.php
-
An OpenID consumer implementation that performs discovery and does session management. See the Consumer.php file documentation for more information.
-
-
- Auth_OpenID_ConsumerResponse -
-
- -
The base class for responses from the Auth_OpenID_Consumer.
-
-
- Auth_OpenID_DatabaseConnection -
-
-
Auth_OpenID_DatabaseConnection in DatabaseConnection.php
-
An empty base class intended to emulate PEAR connection
-
-
- Auth_OpenID_Decoder -
-
-
Auth_OpenID_Decoder in Server.php
-
Decode an incoming Auth_OpenID_WebResponse into an Auth_OpenID_Request.
-
-
- Auth_OpenID_Decoder -
-
- -
-
- Auth_OpenID_DEFAULT_NONCE_CHRS -
-
- -
This is the characters that the nonces are made from.
-
-
- Auth_OpenID_DiffieHellmanConsumerSession -
-
- -
-
- Auth_OpenID_DiffieHellmanConsumerSession -
-
- -
-
- Auth_OpenID_DiffieHellmanServerSession -
-
- -
-
- Auth_OpenID_DiffieHellmanServerSession -
-
- -
-
- Auth_OpenID_digits -
-
-
Auth_OpenID_digits in OpenID.php
-
-
- Auth_OpenID_DO_ABOUT -
-
-
Auth_OpenID_DO_ABOUT in OpenID.php
-
Status code returned when there were no OpenID arguments passed. This code indicates that the caller should return a 200 OK response and display an HTML page that says that this is an OpenID server endpoint.
-
-
- Auth_OpenID_DO_AUTH -
-
-
Auth_OpenID_DO_AUTH in OpenID.php
-
Status code returned when the caller needs to authenticate the
-
-
- Auth_OpenID_DumbStore -
-
-
Auth_OpenID_DumbStore in DumbStore.php
-
This is a store for use in the worst case, when you have no way of saving state on the consumer site. Using this store makes the consumer vulnerable to replay attacks, as it's unable to use nonces. Avoid using this store if it is at all possible.
-
-
- Auth_OpenID_DumbStore -
-
- -
Creates a new Auth_OpenID_DumbStore instance. For the security of the tokens generated by the library, this class attempts to at least have a secure implementation of getAuthKey.
-
-
- Auth_OpenID_Encoder -
-
-
Auth_OpenID_Encoder in Server.php
-
Encode an Auth_OpenID_Response to an Auth_OpenID_WebResponse.
-
-
- Auth_OpenID_EncodingError -
-
- -
-
- Auth_OpenID_EncodingError -
-
- -
An error that indicates an encoding problem occurred.
-
-
- Auth_OpenID_FAILURE -
-
-
Auth_OpenID_FAILURE in Consumer.php
-
This is the status code completeAuth returns when the value it received indicated an invalid login.
-
-
- Auth_OpenID_FailureResponse -
-
- -
A response with a status of Auth_OpenID_FAILURE. Indicates that the OpenID protocol has failed. This could be locally or remotely triggered. This has three relevant attributes:
-
-
- Auth_OpenID_FailureResponse -
-
- -
-
- Auth_OpenID_FileStore -
-
- -
Initializes a new Auth_OpenID_FileStore. This initializes the nonce and association directories, which are subdirectories of the directory passed in.
-
-
- Auth_OpenID_FileStore -
-
-
Auth_OpenID_FileStore in FileStore.php
-
This is a filesystem-based store for OpenID associations and
-
-
- AUTH_OPENID_HTTP_ERROR -
-
- -
-
- AUTH_OPENID_HTTP_OK -
-
-
AUTH_OPENID_HTTP_OK in Server.php
-
-
- AUTH_OPENID_HTTP_REDIRECT -
-
- -
-
- Auth_OpenID_letters -
-
-
Auth_OpenID_letters in OpenID.php
-
Defines for regexes and format checking.
-
-
- Auth_OpenID_LOCAL_ERROR -
-
- -
Status code returned by the server when the only option is to show an error page, since we do not have enough information to redirect back to the consumer. The associated value is an error message that should be displayed on an HTML error page.
-
-
- Auth_OpenID_MalformedReturnURL -
-
- -
An error indicating that the return_to URL is malformed.
-
-
- Auth_OpenID_MalformedReturnURL -
-
- -
-
- Auth_OpenID_MalformedTrustRoot -
-
- -
This error is returned when the trust_root value is malformed.
-
-
- Auth_OpenID_MySQLStore -
-
-
Auth_OpenID_MySQLStore in MySQLStore.php
-
An SQL store that uses MySQL as its backend.
-
-
- Auth_OpenID_NO_MATH_SUPPORT -
-
- -
-
- Auth_OpenID_OpenIDStore -
-
-
Auth_OpenID_OpenIDStore in Interface.php
-
This is the interface for the store objects the OpenID library
-
-
- Auth_OpenID_PARSE_ERROR -
-
-
Auth_OpenID_PARSE_ERROR in Consumer.php
-
This is the status code beginAuth returns when the page fetched from the entered OpenID URL doesn't contain the necessary link tags to function as an identity page.
-
-
- Auth_OpenID_PlainTextConsumerSession -
-
- -
-
- Auth_OpenID_PlainTextServerSession -
-
- -
-
- Auth_OpenID_PostgreSQLStore -
-
-
Auth_OpenID_PostgreSQLStore in PostgreSQLStore.php
-
An SQL store that uses PostgreSQL as its backend.
-
-
- Auth_OpenID_punct -
-
-
Auth_OpenID_punct in OpenID.php
-
-
- Auth_OpenID_REDIRECT -
-
-
Auth_OpenID_REDIRECT in OpenID.php
-
Status code returned when there is a redirect back to the consumer. The value is the URL to redirect back to. The caller should return a 302 Found redirect with a Location: header containing the URL.
-
-
- Auth_OpenID_REMOTE_ERROR -
-
- -
Status code returned when there is an error to return in key-value form to the consumer. The caller should return a 400 Bad Request response with content-type text/plain and the value as the body.
-
-
- Auth_OpenID_REMOTE_OK -
-
-
Auth_OpenID_REMOTE_OK in OpenID.php
-
Status code returned when there is a key-value form OK response to the consumer. The value associated with this code is the response. The caller should return a 200 OK response with content-type text/plain and the value as the body.
-
-
- Auth_OpenID_Server -
-
- -
-
- Auth_OpenID_Server -
-
-
Auth_OpenID_Server in Server.php
-
An object that implements the OpenID protocol for a single URL.
-
-
- Auth_OpenID_ServerError -
-
- -
An error class which gets instantiated and returned whenever an OpenID protocol error occurs. Be prepared to use this in place of an ordinary server response.
-
-
- Auth_OpenID_ServerRequest -
-
- -
-
- Auth_OpenID_ServerRequest -
-
-
Auth_OpenID_ServerRequest in ServerRequest.php
-
Object that holds the state of a request to the OpenID server
-
-
- Auth_OpenID_ServiceEndpointLoader -
-
- -
A session helper class designed to translate between arrays and
-
-
- Auth_OpenID_SetupNeededResponse -
-
- -
-
- Auth_OpenID_SetupNeededResponse -
-
- -
A response with a status of Auth_OpenID_SETUP_NEEDED. Indicates that the request was in immediate mode, and the server is unable to authenticate the user without further interaction.
-
-
- Auth_OpenID_SETUP_NEEDED -
-
-
Auth_OpenID_SETUP_NEEDED in Consumer.php
-
This is the status code completeAuth returns when the Auth_OpenID_Consumer instance is in immediate mode, and the identity server sends back a URL to send the user to to complete his or her login.
-
-
- Auth_OpenID_Signatory -
-
- -
Create a new signatory using a given store.
-
-
- Auth_OpenID_Signatory -
-
-
Auth_OpenID_Signatory in Server.php
-
Responsible for the signature of query data and the verification of OpenID signature values.
-
-
- Auth_OpenID_SigningEncoder -
-
- -
An encoder which also takes care of signing fields when required.
-
-
- Auth_OpenID_SigningEncoder -
-
- -
-
- Auth_OpenID_SQLiteStore -
-
-
Auth_OpenID_SQLiteStore in SQLiteStore.php
-
An SQL store that uses SQLite as its backend.
-
-
- Auth_OpenID_SQLStore -
-
- -
This creates a new SQLStore instance. It requires an established database connection be given to it, and it allows overriding the default table names.
-
-
- Auth_OpenID_SQLStore -
-
-
Auth_OpenID_SQLStore in SQLStore.php
-
This is the parent class for the SQL stores, which contains the logic common to all of the SQL stores.
-
-
- Auth_OpenID_SUCCESS -
-
-
Auth_OpenID_SUCCESS in Consumer.php
-
This is the status code returned when the complete method returns successfully.
-
-
- Auth_OpenID_SuccessResponse -
-
- -
A response with a status of Auth_OpenID_SUCCESS. Indicates that
-
-
- Auth_OpenID_UntrustedReturnURL -
-
- -
An error that indicates that the given return_to is not under the given trust_root.
-
-
- Auth_OpenID_UntrustedReturnURL -
-
- -
-
- Auth_OpenID_WebResponse -
-
- -
-
- Auth_OpenID_WebResponse -
-
- -
A web-capable response object which you can use to generate a user-agent response.
-
-
- autoCommit -
-
- -
Sets auto-commit mode on this database connection.
-
-
- -
-
b
- -
-
-
-
- $body -
-
- -
-
- begin -
-
- -
Start the OpenID authentication process. See steps 1-2 in the overview at the top of this file.
-
-
- begin -
-
-
Auth_OpenID_DatabaseConnection::begin() in DatabaseConnection.php
-
Starts a transaction on this connection, if supported.
-
-
- beginWithoutDiscovery -
-
- -
Start OpenID verification without doing OpenID server
-
-
- blobDecode -
-
- -
-
- blobEncode -
-
- -
-
- -
-
c
- -
-
-
-
- $code -
-
- -
-
- Consumer.php -
-
-
Consumer.php in Consumer.php
-
-
- check -
-
- -
-
- check -
-
- -
-
- check -
-
- -
Override this.
-
-
- clean -
-
- -
Remove expired entries from the database. This is potentially expensive, so only run when it is acceptable to take time.
-
-
- cleanup -
-
- -
Clean up Yadis-related services in the session and return the most-recently-attempted service from the manager, if one exists.
-
-
- commit -
-
- -
Commits a transaction on this connection, if supported.
-
-
- complete -
-
- -
Called to interpret the server's response to an OpenID request. It is called in step 4 of the flow described in the consumer overview.
-
-
- content -
-
- -
-
- content -
-
- -
-
- content -
-
- -
Return the textual content of a specified node.
-
-
- contents -
-
- -
Return the contents of the session in array form.
-
-
- createAssociation -
-
- -
Make a new association.
-
-
- createAuthKey -
-
- -
Generate a new random auth key and safely store it in the location specified by $this->auth_key_name.
-
-
- createTables -
-
- -
-
- create_assoc_table -
-
- -
-
- create_nonce_table -
-
- -
-
- create_settings_table -
-
- -
-
- curlPresent -
-
- -
-
- -
-
d
- -
-
-
-
- $dumb_key -
-
- -
-
- DatabaseConnection.php -
-
-
DatabaseConnection.php in DatabaseConnection.php
-
-
- DumbStore.php -
-
-
DumbStore.php in DumbStore.php
-
-
- decode -
-
- -
Given an HTTP query in an array (key-value pairs), decode it into an Auth_OpenID_Request object.
-
-
- decodeRequest -
-
- -
Decodes a query args array into the appropriate Auth_OpenID_Request object.
-
-
- defaultDecoder -
-
- -
-
- del -
-
- -
Remove a key/value pair from the session.
-
-
- deserialize -
-
- -
Parse an association as stored by serialize(). This is the inverse of serialize.
-
-
- destroy -
-
- -
-
- discover -
-
- -
This should be called statically and will build a Yadis instance if the discovery process succeeds. This implements Yadis discovery as specified in the Yadis specification.
-
-
- -
-
e
- -
-
-
-
- encode -
-
- -
Sign an Auth_OpenID_Response and return an Auth_OpenID_WebResponse.
-
-
- encode -
-
- -
Encode an Auth_OpenID_Response and return an Auth_OpenID_WebResponse.
-
-
- encodeResponse -
-
- -
Encodes as response in the appropriate format suitable for sending to the user agent.
-
-
- encodeToKVForm -
-
- -
Encodes the response to key-value form. This is a machine-readable format used to respond to messages which came directly from the consumer and not through the user-agent. See the OpenID specification.
-
-
- encodeToURL -
-
- -
Encodes this error's response as a URL suitable for redirection. If the response has no return_to, another Auth_OpenID_ServerError is returned.
-
-
- equal -
-
- -
This checks to see if two Auth_OpenID_Association instances represent the same association.
-
-
- evalXPath -
-
- -
-
- evalXPath -
-
- -
Evaluate an XPath expression and return the resulting node list. This should be overridden by subclasses.
-
-
- evalXPath -
-
- -
-
- extensionResponse -
-
- -
Extract signed extension data from the server's response.
-
-
- extractSecret -
-
- -
-
- extractSecret -
-
- -
-
- -
-
f
- -
-
-
-
- FileStore.php -
-
-
FileStore.php in FileStore.php
-
-
- fromQuery -
-
- -
-
- fromQuery -
-
- -
-
- fromSession -
-
- -
Given a session data value (an array), this creates an object
-
-
- -
-
g
- -
-
-
-
- get -
-
- -
Get a key's value from the session.
-
-
- getAll -
-
- -
Run an SQL query with the specified parameters, if any.
-
-
- getAssociation -
-
- -
Retrieve an association. If no handle is specified, return the association with the most recent issue time.
-
-
- getAssociation -
-
- -
-
- getAssociation -
-
- -
This method returns an Association object from storage that matches the server URL and, if specified, handle. It returns null if no such association is found or if the matching association is expired.
-
-
- getAssociation -
-
- -
Given an association handle, get the association from the store, or return a ServerError or null if something goes wrong.
-
-
- getAssociation -
-
- -
This implementation always returns null.
-
-
- getAssociationFilename -
-
- -
Create a unique filename for a given server url and
-
-
- getAuthKey -
-
- -
-
- getAuthKey -
-
- -
This method returns a key used to sign the tokens, to ensure that they haven't been tampered with in transit. It should return the same key every time it is called. The key returned should be AUTH_KEY_LEN bytes long.
-
-
- getAuthKey -
-
- -
Retrieve the auth key from the file specified by $this->auth_key_name, creating it if it does not exist.
-
-
- getAuthKey -
-
- -
This method returns the auth key generated by the constructor.
-
-
- getElements -
-
- -
Used to get XML elements from this object's <Service> element.
-
-
- getExpiresIn -
-
- -
This returns the number of seconds this association is still valid for, or 0 if the association is no longer valid.
-
-
- getHTTPFetcher -
-
- -
Returns an HTTP fetcher object. If the CURL extension is present, an instance of Services_Yadis_ParanoidHTTPFetcher is returned. If not, an instance of Services_Yadis_PlainHTTPFetcher is returned.
-
-
- getNextService -
-
- -
Return the next authentication service for the pair of user_input and session. This function handles fallback.
-
-
- getOne -
-
- -
Run an SQL query and return the first column of the first row of the result set, if any.
-
-
- getPriority -
-
- -
Returns the "priority" attribute value of this <Service> element, if the attribute is present. Returns null if not.
-
-
- getRequest -
-
- -
-
- getRequest -
-
- -
-
- getReturnTo -
-
- -
Get the openid.return_to argument from this response.
-
-
- getRow -
-
- -
Run an SQL query and return the first row of the result set, if any.
-
-
- getTypes -
-
- -
Return the URIs in the "Type" elements, if any, of this Service element.
-
-
- getURIs -
-
- -
Return the URIs in the "URI" elements, if any, of this Service element. The URIs are returned sorted in priority order.
-
-
- -
-
h
- -
-
-
-
- handleRequest -
-
- -
Handle a request. Given an Auth_OpenID_Request object, call the appropriate Auth_OpenID_Server method to process the request and generate a response.
-
-
- hasReturnTo -
-
- -
Returns the return_to URL for the request which caused this error.
-
-
- -
-
i
- -
-
-
-
- Interface.php -
-
-
Interface.php in Interface.php
-
-
- init -
-
- -
Initialize an instance of Services_Yadis_XMLParser with some XML and namespaces. This SHOULD NOT be overridden by subclasses.
-
-
- invalidate -
-
- -
Invalidate a given association handle.
-
-
- isDumb -
-
- -
This store is a dumb mode store, so this method is overridden to return true.
-
-
- isDumb -
-
- -
This method must return true if the store is a dumb-mode-style store. Unlike all other methods in this class, this one provides a default implementation, which returns false.
-
-
- isError -
-
- -
Returns true if $value constitutes a database error; returns false otherwise.
-
-
- -
-
m
- -
-
-
-
- MySQLStore.php -
-
-
MySQLStore.php in MySQLStore.php
-
-
- Manager.php -
-
-
Manager.php in Manager.php
-
-
- -
-
n
- -
-
-
-
- $normal_key -
-
- -
-
- newObject -
-
- -
Returns a new instance of this loader's class, using the session data to construct it if necessary. The object need only be created; $this->fromSession() will take care of setting the object's attributes.
-
-
- newObject -
-
- -
-
- newObject -
-
- -
-
- nextService -
-
- -
Return the next service
-
-
- -
-
o
- -
-
-
-
- OpenID.php -
-
-
OpenID.php in OpenID.php
-
-
- -
-
p
- -
-
-
-
- PostgreSQLStore.php -
-
-
PostgreSQLStore.php in PostgreSQLStore.php
-
-
- parseXRDS -
-
- -
Parse an XML string (XRDS document) and return either a Services_Yadis_XRDS object or null, depending on whether the XRDS XML is valid.
-
-
- prepareForLoad -
-
- -
Prepares the data array by making any necessary changes.
-
-
- prepareForLoad -
-
- -
-
- prepareForSave -
-
- -
-
- prepareForSave -
-
- -
Override this.
-
-
- -
-
q
- -
-
-
-
- query -
-
-
Auth_OpenID_DatabaseConnection::query() in DatabaseConnection.php
-
Run an SQL query with the specified parameters, if any.
-
-
- -
-
r
- -
-
-
-
- $responseFactory -
-
- -
-
- readAuthKey -
-
- -
Read the auth key from the auth key file. Will return None if there is currently no key.
-
-
- redirectURL -
-
- -
Compute the appropriate redirection URL for this request based on a specified trust root and return-to.
-
-
- registerNamespace -
-
- -
-
- registerNamespace -
-
- -
-
- registerNamespace -
-
- -
Register a namespace with the XML parser. This should be overridden by subclasses.
-
-
- removeAssociation -
-
- -
-
- removeAssociation -
-
- -
This method removes the matching association if it's found, and returns whether the association was removed or not.
-
-
- removeAssociation -
-
- -
Remove an association if it exists. Do nothing if it does not.
-
-
- removeAssociation -
-
- -
This implementation always returns false.
-
-
- requiredKeys -
-
- -
-
- requiredKeys -
-
- -
-
- reset -
-
- -
Removes all entries from the store; implementation is optional.
-
-
- reset -
-
- -
Resets the store by removing all records from the store's tables.
-
-
- resultToBool -
-
- -
Converts a query result to a boolean. If the result is a database error according to $this->isError(), this returns false; otherwise, this returns true.
-
-
- rollback -
-
- -
Performs a rollback on this connection, if supported.
-
-
- -
-
s
- -
-
-
-
- $SECRET_LIFETIME -
-
- -
-
- $session_type -
-
- -
An object that knows how to handle association requests with no session type.
-
-
- $session_type -
-
- -
An object that knows how to handle association requests with the Diffie-Hellman session type.
-
-
- $session_type -
-
- -
-
- $session_type -
-
- -
-
- $status -
-
- -
-
- $status -
-
- -
-
- $status -
-
- -
-
- $status -
-
- -
-
- $status -
-
- -
-
- Server.php -
-
-
Server.php in Server.php
-
-
- ServerRequest.php -
-
-
ServerRequest.php in ServerRequest.php
-
-
- SQLiteStore.php -
-
-
SQLiteStore.php in SQLiteStore.php
-
-
- SQLStore.php -
-
-
SQLStore.php in SQLStore.php
-
-
- serialize -
-
- -
Convert an association to KV form.
-
-
- services -
-
- -
Returns the list of service objects as described by the XRDS document, if this yadis object represents a successful Yadis discovery.
-
-
- services -
-
- -
Returns a list of service objects which correspond to <Service> elements in the XRDS XML document for this object.
-
-
- Services_Yadis_Discovery -
-
- -
Initialize a discovery object.
-
-
- Services_Yadis_Discovery -
-
- -
State management for discovery.
-
-
- Services_Yadis_dom -
-
- -
This concrete implementation of Services_Yadis_XMLParser implements
-
-
- Services_Yadis_dom -
-
- -
-
- Services_Yadis_domxml -
-
- -
-
- Services_Yadis_domxml -
-
- -
This concrete implementation of Services_Yadis_XMLParser implements
-
-
- Services_Yadis_getNSMap -
-
- -
-
- Services_Yadis_getSupportedExtensions -
-
- -
-
- Services_Yadis_getXMLParser -
-
- -
Returns an instance of a Services_Yadis_XMLParser subclass based on the availability of PHP extensions for XML parsing. If Services_Yadis_setDefaultParser has been called, the parser used in that call will be returned instead.
-
-
- Services_Yadis_Manager -
-
-
Services_Yadis_Manager in Manager.php
-
The Yadis service manager which stores state in a session and iterates over <Service> elements in a Yadis XRDS document and lets a caller attempt to use each one. This is used by the Yadis library internally.
-
-
- Services_Yadis_ManagerLoader -
-
- -
A session helper class designed to translate between arrays and
-
-
- SERVICES_YADIS_MATCH_ALL -
-
- -
This match mode means a given service must match ALL filters passed to the Services_Yadis_XRDS::services() call.
-
-
- SERVICES_YADIS_MATCH_ANY -
-
- -
This match mode means a given service must match ANY filters (at least one) passed to the Services_Yadis_XRDS::services() call.
-
-
- SERVICES_YADIS_MAX_PRIORITY -
-
- -
The priority value used for service elements with no priority specified.
-
-
- Services_Yadis_PHPSession -
-
- -
The base session class used by the Services_Yadis_Manager. This class wraps the default PHP session machinery and should be subclassed if your application doesn't use PHP sessioning.
-
-
- Services_Yadis_Service -
-
- -
This class represents a <Service> element in an XRDS document.
-
-
- Services_Yadis_Service -
-
- -
Creates an empty service object.
-
-
- Services_Yadis_SessionLoader -
-
- -
A session helper class designed to translate between arrays and
-
-
- Services_Yadis_setDefaultParser -
-
- -
Set a default parser to override the extension-driven selection of available parser classes. This is helpful in a test environment or one in which multiple parsers can be used but one is more desirable.
-
-
- Services_Yadis_XMLParser -
-
- -
The base class for wrappers for available PHP XML-parsing
-
-
- Services_Yadis_XRDS -
-
- -
This class performs parsing of XRDS documents.
-
-
- Services_Yadis_XRDS -
-
- -
Instantiate a Services_Yadis_XRDS object. Requires an XPath instance which has been used to parse a valid XRDS document.
-
-
- Services_Yadis_Yadis -
-
- -
Instantiates an empty Services_Yadis_Yadis object. This constructor should not be used by any user of the library.
-
-
- Services_Yadis_Yadis -
-
- -
This is the core of the PHP Yadis library. This is the only class a user needs to use to perform Yadis discovery. This class performs the discovery AND stores the result of the discovery.
-
-
- set -
-
- -
Set a session key/value pair.
-
-
- setSQL -
-
- -
-
- setSQL -
-
- -
This method should be overridden by subclasses. This method is called by the constructor to set values in $this->sql, which is an array keyed on sql name.
-
-
- setXML -
-
- -
-
- setXML -
-
- -
Set this parser object's XML payload. This should be overridden by subclasses.
-
-
- setXML -
-
- -
-
- sign -
-
- -
Given a response, sign the fields in the response's 'signed' list, and insert the signature into the response.
-
-
- storeAssociation -
-
- -
-
- storeAssociation -
-
- -
Store an association in the association directory.
-
-
- storeAssociation -
-
- -
This method puts an Association object into storage, retrievable by server URL and handle.
-
-
- storeAssociation -
-
- -
This implementation does nothing.
-
-
- storeNonce -
-
- -
This implementation does nothing.
-
-
- storeNonce -
-
- -
Mark this nonce as present.
-
-
- storeNonce -
-
- -
Stores a nonce. This is used by the consumer to prevent replay attacks.
-
-
- -
-
t
- -
-
-
-
- tableExists -
-
- -
-
- toSession -
-
- -
Returns an array of keys and values built from the attributes of $obj. If $this->prepareForSave($obj) returns an array, its keys and values are used to update the $data array of attributes from $obj.
-
-
- toString -
-
- -
-
- toString -
-
- -
Returns this error message.
-
-
- toString -
-
- -
-
- -
-
u
- -
-
-
-
- useNonce -
-
- -
-
- useNonce -
-
- -
This method is called when the library is attempting to use a nonce. If the nonce is in the store, this method removes it and returns a value which evaluates as true. Otherwise it returns a value which evaluates as false.
-
-
- useNonce -
-
- -
Return whether this nonce is present. As a side effect, mark it as no longer present.
-
-
- useNonce -
-
- -
In a system truly limited to dumb mode, nonces must all be accepted. This therefore always returns true, which makes replay attacks feasible.
-
-
- -
-
v
- -
-
-
-
- verify -
-
- -
Verify, using a given association handle, a signature with signed key-value pairs from an HTTP request.
-
-
- -
-
w
- -
-
-
-
- whichEncoding -
-
- -
Returns one of $_Auth_OpenID_Encode_Url, $_Auth_OpenID_Encode_Kvform, or null, depending on the type of encoding expected for this error's payload.
-
-
- -
-
x
- -
-
-
-
- XML.php -
-
-
XML.php in XML.php
-
-
- XRDS.php -
-
-
XRDS.php in XRDS.php
-
-
- -
-
y
- -
-
-
-
- Yadis.php -
-
-
Yadis.php in Yadis.php
-
-
- -
- a - b - c - d - e - f - g - h - i - m - n - o - p - q - r - s - t - u - v - w - x - y -
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/elementindex_OpenID.html b/modules/member/php-openid-1.2.3/doc/elementindex_OpenID.html deleted file mode 100644 index 48bde7f27..000000000 --- a/modules/member/php-openid-1.2.3/doc/elementindex_OpenID.html +++ /dev/null @@ -1,1473 +0,0 @@ - - - - - - - - - - - -

[OpenID] element index

-

Package indexes

- -All elements -
-
- a - b - c - d - e - f - g - h - i - m - n - o - p - q - r - s - t - u - v - w -
- - -
-
a
- -
-
-
-
- $AUTH_KEY_LEN -
-
- -
-
- addExtensionArg -
-
- -
Add an extension argument to this OpenID authentication request.
-
-
- answer -
-
- -
-
- answer -
-
- -
-
- Association.php -
-
-
Association.php in Association.php
-
-
- Auth_OpenID_AlreadySigned -
-
- -
An error that indicates that a response was already signed.
-
-
- Auth_OpenID_Association -
-
-
Auth_OpenID_Association in Association.php
-
This class represents an association between a server and a consumer. In general, users of this library will never see instances of this object. The only exception is if you implement a custom Auth_OpenID_OpenIDStore.
-
-
- Auth_OpenID_AuthRequest -
-
- -
Initialize an authentication request with the specified token, association, and endpoint.
-
-
- Auth_OpenID_AuthRequest -
-
-
Auth_OpenID_AuthRequest in Consumer.php
-
This class represents an authentication request from a consumer to an OpenID server.
-
-
- Auth_OpenID_CANCEL -
-
-
Auth_OpenID_CANCEL in Consumer.php
-
Status to indicate cancellation of OpenID authentication.
-
-
- Auth_OpenID_CancelResponse -
-
- -
-
- Auth_OpenID_CancelResponse -
-
- -
A response with a status of Auth_OpenID_CANCEL. Indicates that the user cancelled the OpenID authentication request. This has two relevant attributes:
-
-
- Auth_OpenID_Consumer -
-
-
Auth_OpenID_Consumer in Consumer.php
-
An OpenID consumer implementation that performs discovery and does session management. See the Consumer.php file documentation for more information.
-
-
- Auth_OpenID_Consumer -
-
- -
Initialize a Consumer instance.
-
-
- Auth_OpenID_ConsumerResponse -
-
- -
The base class for responses from the Auth_OpenID_Consumer.
-
-
- Auth_OpenID_DatabaseConnection -
-
-
Auth_OpenID_DatabaseConnection in DatabaseConnection.php
-
An empty base class intended to emulate PEAR connection
-
-
- Auth_OpenID_Decoder -
-
-
Auth_OpenID_Decoder in Server.php
-
Decode an incoming Auth_OpenID_WebResponse into an Auth_OpenID_Request.
-
-
- Auth_OpenID_Decoder -
-
- -
-
- Auth_OpenID_DEFAULT_NONCE_CHRS -
-
- -
This is the characters that the nonces are made from.
-
-
- Auth_OpenID_DiffieHellmanConsumerSession -
-
- -
-
- Auth_OpenID_DiffieHellmanConsumerSession -
-
- -
-
- Auth_OpenID_DiffieHellmanServerSession -
-
- -
-
- Auth_OpenID_DiffieHellmanServerSession -
-
- -
-
- Auth_OpenID_digits -
-
-
Auth_OpenID_digits in OpenID.php
-
-
- Auth_OpenID_DO_ABOUT -
-
-
Auth_OpenID_DO_ABOUT in OpenID.php
-
Status code returned when there were no OpenID arguments passed. This code indicates that the caller should return a 200 OK response and display an HTML page that says that this is an OpenID server endpoint.
-
-
- Auth_OpenID_DO_AUTH -
-
-
Auth_OpenID_DO_AUTH in OpenID.php
-
Status code returned when the caller needs to authenticate the
-
-
- Auth_OpenID_DumbStore -
-
- -
Creates a new Auth_OpenID_DumbStore instance. For the security of the tokens generated by the library, this class attempts to at least have a secure implementation of getAuthKey.
-
-
- Auth_OpenID_DumbStore -
-
-
Auth_OpenID_DumbStore in DumbStore.php
-
This is a store for use in the worst case, when you have no way of saving state on the consumer site. Using this store makes the consumer vulnerable to replay attacks, as it's unable to use nonces. Avoid using this store if it is at all possible.
-
-
- Auth_OpenID_Encoder -
-
-
Auth_OpenID_Encoder in Server.php
-
Encode an Auth_OpenID_Response to an Auth_OpenID_WebResponse.
-
-
- Auth_OpenID_EncodingError -
-
- -
An error that indicates an encoding problem occurred.
-
-
- Auth_OpenID_EncodingError -
-
- -
-
- Auth_OpenID_FAILURE -
-
-
Auth_OpenID_FAILURE in Consumer.php
-
This is the status code completeAuth returns when the value it received indicated an invalid login.
-
-
- Auth_OpenID_FailureResponse -
-
- -
A response with a status of Auth_OpenID_FAILURE. Indicates that the OpenID protocol has failed. This could be locally or remotely triggered. This has three relevant attributes:
-
-
- Auth_OpenID_FailureResponse -
-
- -
-
- Auth_OpenID_FileStore -
-
- -
Initializes a new Auth_OpenID_FileStore. This initializes the nonce and association directories, which are subdirectories of the directory passed in.
-
-
- Auth_OpenID_FileStore -
-
-
Auth_OpenID_FileStore in FileStore.php
-
This is a filesystem-based store for OpenID associations and
-
-
- AUTH_OPENID_HTTP_ERROR -
-
- -
-
- AUTH_OPENID_HTTP_OK -
-
-
AUTH_OPENID_HTTP_OK in Server.php
-
-
- AUTH_OPENID_HTTP_REDIRECT -
-
- -
-
- Auth_OpenID_letters -
-
-
Auth_OpenID_letters in OpenID.php
-
Defines for regexes and format checking.
-
-
- Auth_OpenID_LOCAL_ERROR -
-
- -
Status code returned by the server when the only option is to show an error page, since we do not have enough information to redirect back to the consumer. The associated value is an error message that should be displayed on an HTML error page.
-
-
- Auth_OpenID_MalformedReturnURL -
-
- -
An error indicating that the return_to URL is malformed.
-
-
- Auth_OpenID_MalformedReturnURL -
-
- -
-
- Auth_OpenID_MalformedTrustRoot -
-
- -
This error is returned when the trust_root value is malformed.
-
-
- Auth_OpenID_MySQLStore -
-
-
Auth_OpenID_MySQLStore in MySQLStore.php
-
An SQL store that uses MySQL as its backend.
-
-
- Auth_OpenID_NO_MATH_SUPPORT -
-
- -
-
- Auth_OpenID_OpenIDStore -
-
-
Auth_OpenID_OpenIDStore in Interface.php
-
This is the interface for the store objects the OpenID library
-
-
- Auth_OpenID_PARSE_ERROR -
-
-
Auth_OpenID_PARSE_ERROR in Consumer.php
-
This is the status code beginAuth returns when the page fetched from the entered OpenID URL doesn't contain the necessary link tags to function as an identity page.
-
-
- Auth_OpenID_PlainTextConsumerSession -
-
- -
-
- Auth_OpenID_PlainTextServerSession -
-
- -
-
- Auth_OpenID_PostgreSQLStore -
-
-
Auth_OpenID_PostgreSQLStore in PostgreSQLStore.php
-
An SQL store that uses PostgreSQL as its backend.
-
-
- Auth_OpenID_punct -
-
-
Auth_OpenID_punct in OpenID.php
-
-
- Auth_OpenID_REDIRECT -
-
-
Auth_OpenID_REDIRECT in OpenID.php
-
Status code returned when there is a redirect back to the consumer. The value is the URL to redirect back to. The caller should return a 302 Found redirect with a Location: header containing the URL.
-
-
- Auth_OpenID_REMOTE_ERROR -
-
- -
Status code returned when there is an error to return in key-value form to the consumer. The caller should return a 400 Bad Request response with content-type text/plain and the value as the body.
-
-
- Auth_OpenID_REMOTE_OK -
-
-
Auth_OpenID_REMOTE_OK in OpenID.php
-
Status code returned when there is a key-value form OK response to the consumer. The value associated with this code is the response. The caller should return a 200 OK response with content-type text/plain and the value as the body.
-
-
- Auth_OpenID_Server -
-
- -
-
- Auth_OpenID_Server -
-
-
Auth_OpenID_Server in Server.php
-
An object that implements the OpenID protocol for a single URL.
-
-
- Auth_OpenID_ServerError -
-
- -
An error class which gets instantiated and returned whenever an OpenID protocol error occurs. Be prepared to use this in place of an ordinary server response.
-
-
- Auth_OpenID_ServerRequest -
-
-
Auth_OpenID_ServerRequest in ServerRequest.php
-
Object that holds the state of a request to the OpenID server
-
-
- Auth_OpenID_ServerRequest -
-
- -
-
- Auth_OpenID_SetupNeededResponse -
-
- -
-
- Auth_OpenID_SetupNeededResponse -
-
- -
A response with a status of Auth_OpenID_SETUP_NEEDED. Indicates that the request was in immediate mode, and the server is unable to authenticate the user without further interaction.
-
-
- Auth_OpenID_SETUP_NEEDED -
-
-
Auth_OpenID_SETUP_NEEDED in Consumer.php
-
This is the status code completeAuth returns when the Auth_OpenID_Consumer instance is in immediate mode, and the identity server sends back a URL to send the user to to complete his or her login.
-
-
- Auth_OpenID_Signatory -
-
- -
Create a new signatory using a given store.
-
-
- Auth_OpenID_Signatory -
-
-
Auth_OpenID_Signatory in Server.php
-
Responsible for the signature of query data and the verification of OpenID signature values.
-
-
- Auth_OpenID_SigningEncoder -
-
- -
-
- Auth_OpenID_SigningEncoder -
-
- -
An encoder which also takes care of signing fields when required.
-
-
- Auth_OpenID_SQLiteStore -
-
-
Auth_OpenID_SQLiteStore in SQLiteStore.php
-
An SQL store that uses SQLite as its backend.
-
-
- Auth_OpenID_SQLStore -
-
-
Auth_OpenID_SQLStore in SQLStore.php
-
This is the parent class for the SQL stores, which contains the logic common to all of the SQL stores.
-
-
- Auth_OpenID_SQLStore -
-
- -
This creates a new SQLStore instance. It requires an established database connection be given to it, and it allows overriding the default table names.
-
-
- Auth_OpenID_SUCCESS -
-
-
Auth_OpenID_SUCCESS in Consumer.php
-
This is the status code returned when the complete method returns successfully.
-
-
- Auth_OpenID_SuccessResponse -
-
- -
A response with a status of Auth_OpenID_SUCCESS. Indicates that
-
-
- Auth_OpenID_UntrustedReturnURL -
-
- -
An error that indicates that the given return_to is not under the given trust_root.
-
-
- Auth_OpenID_UntrustedReturnURL -
-
- -
-
- Auth_OpenID_WebResponse -
-
- -
-
- Auth_OpenID_WebResponse -
-
- -
A web-capable response object which you can use to generate a user-agent response.
-
-
- autoCommit -
-
- -
Sets auto-commit mode on this database connection.
-
-
- -
-
b
- -
-
-
-
- $body -
-
- -
-
- begin -
-
- -
Start the OpenID authentication process. See steps 1-2 in the overview at the top of this file.
-
-
- begin -
-
-
Auth_OpenID_DatabaseConnection::begin() in DatabaseConnection.php
-
Starts a transaction on this connection, if supported.
-
-
- beginWithoutDiscovery -
-
- -
Start OpenID verification without doing OpenID server
-
-
- blobDecode -
-
- -
-
- blobEncode -
-
- -
-
- -
-
c
- -
-
-
-
- $code -
-
- -
-
- Consumer.php -
-
-
Consumer.php in Consumer.php
-
-
- clean -
-
- -
Remove expired entries from the database. This is potentially expensive, so only run when it is acceptable to take time.
-
-
- commit -
-
- -
Commits a transaction on this connection, if supported.
-
-
- complete -
-
- -
Called to interpret the server's response to an OpenID request. It is called in step 4 of the flow described in the consumer overview.
-
-
- createAssociation -
-
- -
Make a new association.
-
-
- createAuthKey -
-
- -
Generate a new random auth key and safely store it in the location specified by $this->auth_key_name.
-
-
- createTables -
-
- -
-
- create_assoc_table -
-
- -
-
- create_nonce_table -
-
- -
-
- create_settings_table -
-
- -
-
- -
-
d
- -
-
-
-
- $dumb_key -
-
- -
-
- DatabaseConnection.php -
-
-
DatabaseConnection.php in DatabaseConnection.php
-
-
- DumbStore.php -
-
-
DumbStore.php in DumbStore.php
-
-
- decode -
-
- -
Given an HTTP query in an array (key-value pairs), decode it into an Auth_OpenID_Request object.
-
-
- decodeRequest -
-
- -
Decodes a query args array into the appropriate Auth_OpenID_Request object.
-
-
- defaultDecoder -
-
- -
-
- deserialize -
-
- -
Parse an association as stored by serialize(). This is the inverse of serialize.
-
-
- destroy -
-
- -
-
- -
-
e
- -
-
-
-
- encode -
-
- -
Sign an Auth_OpenID_Response and return an Auth_OpenID_WebResponse.
-
-
- encode -
-
- -
Encode an Auth_OpenID_Response and return an Auth_OpenID_WebResponse.
-
-
- encodeResponse -
-
- -
Encodes as response in the appropriate format suitable for sending to the user agent.
-
-
- encodeToKVForm -
-
- -
Encodes the response to key-value form. This is a machine-readable format used to respond to messages which came directly from the consumer and not through the user-agent. See the OpenID specification.
-
-
- encodeToURL -
-
- -
Encodes this error's response as a URL suitable for redirection. If the response has no return_to, another Auth_OpenID_ServerError is returned.
-
-
- equal -
-
- -
This checks to see if two Auth_OpenID_Association instances represent the same association.
-
-
- extensionResponse -
-
- -
Extract signed extension data from the server's response.
-
-
- extractSecret -
-
- -
-
- extractSecret -
-
- -
-
- -
-
f
- -
-
-
-
- FileStore.php -
-
-
FileStore.php in FileStore.php
-
-
- fromQuery -
-
- -
-
- fromQuery -
-
- -
-
- -
-
g
- -
-
-
-
- getAll -
-
- -
Run an SQL query with the specified parameters, if any.
-
-
- getAssociation -
-
- -
Retrieve an association. If no handle is specified, return the association with the most recent issue time.
-
-
- getAssociation -
-
- -
This implementation always returns null.
-
-
- getAssociation -
-
- -
Given an association handle, get the association from the store, or return a ServerError or null if something goes wrong.
-
-
- getAssociation -
-
- -
-
- getAssociation -
-
- -
This method returns an Association object from storage that matches the server URL and, if specified, handle. It returns null if no such association is found or if the matching association is expired.
-
-
- getAssociationFilename -
-
- -
Create a unique filename for a given server url and
-
-
- getAuthKey -
-
- -
Retrieve the auth key from the file specified by $this->auth_key_name, creating it if it does not exist.
-
-
- getAuthKey -
-
- -
This method returns a key used to sign the tokens, to ensure that they haven't been tampered with in transit. It should return the same key every time it is called. The key returned should be AUTH_KEY_LEN bytes long.
-
-
- getAuthKey -
-
- -
-
- getAuthKey -
-
- -
This method returns the auth key generated by the constructor.
-
-
- getExpiresIn -
-
- -
This returns the number of seconds this association is still valid for, or 0 if the association is no longer valid.
-
-
- getOne -
-
- -
Run an SQL query and return the first column of the first row of the result set, if any.
-
-
- getRequest -
-
- -
-
- getRequest -
-
- -
-
- getReturnTo -
-
- -
Get the openid.return_to argument from this response.
-
-
- getRow -
-
- -
Run an SQL query and return the first row of the result set, if any.
-
-
- -
-
h
- -
-
-
-
- handleRequest -
-
- -
Handle a request. Given an Auth_OpenID_Request object, call the appropriate Auth_OpenID_Server method to process the request and generate a response.
-
-
- hasReturnTo -
-
- -
Returns the return_to URL for the request which caused this error.
-
-
- -
-
i
- -
-
-
-
- Interface.php -
-
-
Interface.php in Interface.php
-
-
- invalidate -
-
- -
Invalidate a given association handle.
-
-
- isDumb -
-
- -
This method must return true if the store is a dumb-mode-style store. Unlike all other methods in this class, this one provides a default implementation, which returns false.
-
-
- isDumb -
-
- -
This store is a dumb mode store, so this method is overridden to return true.
-
-
- isError -
-
- -
Returns true if $value constitutes a database error; returns false otherwise.
-
-
- -
-
m
- -
-
-
-
- MySQLStore.php -
-
-
MySQLStore.php in MySQLStore.php
-
-
- -
-
n
- -
-
-
-
- $normal_key -
-
- -
-
- -
-
o
- -
-
-
-
- OpenID.php -
-
-
OpenID.php in OpenID.php
-
-
- -
-
p
- -
-
-
-
- PostgreSQLStore.php -
-
-
PostgreSQLStore.php in PostgreSQLStore.php
-
-
- -
-
q
- -
-
-
-
- query -
-
-
Auth_OpenID_DatabaseConnection::query() in DatabaseConnection.php
-
Run an SQL query with the specified parameters, if any.
-
-
- -
-
r
- -
-
-
-
- $responseFactory -
-
- -
-
- readAuthKey -
-
- -
Read the auth key from the auth key file. Will return None if there is currently no key.
-
-
- redirectURL -
-
- -
Compute the appropriate redirection URL for this request based on a specified trust root and return-to.
-
-
- removeAssociation -
-
- -
This implementation always returns false.
-
-
- removeAssociation -
-
- -
Remove an association if it exists. Do nothing if it does not.
-
-
- removeAssociation -
-
- -
-
- removeAssociation -
-
- -
This method removes the matching association if it's found, and returns whether the association was removed or not.
-
-
- reset -
-
- -
Resets the store by removing all records from the store's tables.
-
-
- reset -
-
- -
Removes all entries from the store; implementation is optional.
-
-
- resultToBool -
-
- -
Converts a query result to a boolean. If the result is a database error according to $this->isError(), this returns false; otherwise, this returns true.
-
-
- rollback -
-
- -
Performs a rollback on this connection, if supported.
-
-
- -
-
s
- -
-
-
-
- $SECRET_LIFETIME -
-
- -
-
- $session_type -
-
- -
-
- $session_type -
-
- -
An object that knows how to handle association requests with the Diffie-Hellman session type.
-
-
- $session_type -
-
- -
-
- $session_type -
-
- -
An object that knows how to handle association requests with no session type.
-
-
- $status -
-
- -
-
- $status -
-
- -
-
- $status -
-
- -
-
- $status -
-
- -
-
- $status -
-
- -
-
- Server.php -
-
-
Server.php in Server.php
-
-
- ServerRequest.php -
-
-
ServerRequest.php in ServerRequest.php
-
-
- SQLiteStore.php -
-
-
SQLiteStore.php in SQLiteStore.php
-
-
- SQLStore.php -
-
-
SQLStore.php in SQLStore.php
-
-
- serialize -
-
- -
Convert an association to KV form.
-
-
- setSQL -
-
- -
This method should be overridden by subclasses. This method is called by the constructor to set values in $this->sql, which is an array keyed on sql name.
-
-
- setSQL -
-
- -
-
- sign -
-
- -
Given a response, sign the fields in the response's 'signed' list, and insert the signature into the response.
-
-
- storeAssociation -
-
- -
-
- storeAssociation -
-
- -
This method puts an Association object into storage, retrievable by server URL and handle.
-
-
- storeAssociation -
-
- -
This implementation does nothing.
-
-
- storeAssociation -
-
- -
Store an association in the association directory.
-
-
- storeNonce -
-
- -
Mark this nonce as present.
-
-
- storeNonce -
-
- -
This implementation does nothing.
-
-
- storeNonce -
-
- -
Stores a nonce. This is used by the consumer to prevent replay attacks.
-
-
- -
-
t
- -
-
-
-
- tableExists -
-
- -
-
- toString -
-
- -
-
- toString -
-
- -
Returns this error message.
-
-
- toString -
-
- -
-
- -
-
u
- -
-
-
-
- useNonce -
-
- -
-
- useNonce -
-
- -
This method is called when the library is attempting to use a nonce. If the nonce is in the store, this method removes it and returns a value which evaluates as true. Otherwise it returns a value which evaluates as false.
-
-
- useNonce -
-
- -
Return whether this nonce is present. As a side effect, mark it as no longer present.
-
-
- useNonce -
-
- -
In a system truly limited to dumb mode, nonces must all be accepted. This therefore always returns true, which makes replay attacks feasible.
-
-
- -
-
v
- -
-
-
-
- verify -
-
- -
Verify, using a given association handle, a signature with signed key-value pairs from an HTTP request.
-
-
- -
-
w
- -
-
-
-
- whichEncoding -
-
- -
Returns one of $_Auth_OpenID_Encode_Url, $_Auth_OpenID_Encode_Kvform, or null, depending on the type of encoding expected for this error's payload.
-
-
- -
- a - b - c - d - e - f - g - h - i - m - n - o - p - q - r - s - t - u - v - w -
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/elementindex_Yadis.html b/modules/member/php-openid-1.2.3/doc/elementindex_Yadis.html deleted file mode 100644 index fe263a4cc..000000000 --- a/modules/member/php-openid-1.2.3/doc/elementindex_Yadis.html +++ /dev/null @@ -1,680 +0,0 @@ - - - - - - - - - - - -

[Yadis] element index

-

Package indexes

- -All elements -
-
- a - c - d - e - f - g - i - m - n - p - r - s - t - x - y -
- - -
-
a
- -
-
-
-
- attributes -
-
- -
Return the attributes of a specified node.
-
-
- attributes -
-
- -
-
- attributes -
-
- -
-
- Auth_OpenID_ServiceEndpointLoader -
-
- -
A session helper class designed to translate between arrays and
-
-
- -
-
c
- -
-
-
-
- check -
-
- -
-
- check -
-
- -
-
- check -
-
- -
Override this.
-
-
- cleanup -
-
- -
Clean up Yadis-related services in the session and return the most-recently-attempted service from the manager, if one exists.
-
-
- content -
-
- -
Return the textual content of a specified node.
-
-
- content -
-
- -
-
- content -
-
- -
-
- contents -
-
- -
Return the contents of the session in array form.
-
-
- curlPresent -
-
- -
-
- -
-
d
- -
-
-
-
- del -
-
- -
Remove a key/value pair from the session.
-
-
- discover -
-
- -
This should be called statically and will build a Yadis instance if the discovery process succeeds. This implements Yadis discovery as specified in the Yadis specification.
-
-
- -
-
e
- -
-
-
-
- evalXPath -
-
- -
Evaluate an XPath expression and return the resulting node list. This should be overridden by subclasses.
-
-
- evalXPath -
-
- -
-
- evalXPath -
-
- -
-
- -
-
f
- -
-
-
-
- fromSession -
-
- -
Given a session data value (an array), this creates an object
-
-
- -
-
g
- -
-
-
-
- get -
-
- -
Get a key's value from the session.
-
-
- getElements -
-
- -
Used to get XML elements from this object's <Service> element.
-
-
- getHTTPFetcher -
-
- -
Returns an HTTP fetcher object. If the CURL extension is present, an instance of Services_Yadis_ParanoidHTTPFetcher is returned. If not, an instance of Services_Yadis_PlainHTTPFetcher is returned.
-
-
- getNextService -
-
- -
Return the next authentication service for the pair of user_input and session. This function handles fallback.
-
-
- getPriority -
-
- -
Returns the "priority" attribute value of this <Service> element, if the attribute is present. Returns null if not.
-
-
- getTypes -
-
- -
Return the URIs in the "Type" elements, if any, of this Service element.
-
-
- getURIs -
-
- -
Return the URIs in the "URI" elements, if any, of this Service element. The URIs are returned sorted in priority order.
-
-
- -
-
i
- -
-
-
-
- init -
-
- -
Initialize an instance of Services_Yadis_XMLParser with some XML and namespaces. This SHOULD NOT be overridden by subclasses.
-
-
- -
-
m
- -
-
-
-
- Manager.php -
-
-
Manager.php in Manager.php
-
-
- -
-
n
- -
-
-
-
- newObject -
-
- -
-
- newObject -
-
- -
-
- newObject -
-
- -
Returns a new instance of this loader's class, using the session data to construct it if necessary. The object need only be created; $this->fromSession() will take care of setting the object's attributes.
-
-
- nextService -
-
- -
Return the next service
-
-
- -
-
p
- -
-
-
-
- parseXRDS -
-
- -
Parse an XML string (XRDS document) and return either a Services_Yadis_XRDS object or null, depending on whether the XRDS XML is valid.
-
-
- prepareForLoad -
-
- -
-
- prepareForLoad -
-
- -
Prepares the data array by making any necessary changes.
-
-
- prepareForSave -
-
- -
-
- prepareForSave -
-
- -
Override this.
-
-
- -
-
r
- -
-
-
-
- registerNamespace -
-
- -
-
- registerNamespace -
-
- -
-
- registerNamespace -
-
- -
Register a namespace with the XML parser. This should be overridden by subclasses.
-
-
- requiredKeys -
-
- -
-
- requiredKeys -
-
- -
-
- -
-
s
- -
-
-
-
- services -
-
- -
Returns the list of service objects as described by the XRDS document, if this yadis object represents a successful Yadis discovery.
-
-
- services -
-
- -
Returns a list of service objects which correspond to <Service> elements in the XRDS XML document for this object.
-
-
- Services_Yadis_Discovery -
-
- -
Initialize a discovery object.
-
-
- Services_Yadis_Discovery -
-
- -
State management for discovery.
-
-
- Services_Yadis_dom -
-
- -
This concrete implementation of Services_Yadis_XMLParser implements
-
-
- Services_Yadis_dom -
-
- -
-
- Services_Yadis_domxml -
-
- -
This concrete implementation of Services_Yadis_XMLParser implements
-
-
- Services_Yadis_domxml -
-
- -
-
- Services_Yadis_getNSMap -
-
- -
-
- Services_Yadis_getSupportedExtensions -
-
- -
-
- Services_Yadis_getXMLParser -
-
- -
Returns an instance of a Services_Yadis_XMLParser subclass based on the availability of PHP extensions for XML parsing. If Services_Yadis_setDefaultParser has been called, the parser used in that call will be returned instead.
-
-
- Services_Yadis_Manager -
-
-
Services_Yadis_Manager in Manager.php
-
The Yadis service manager which stores state in a session and iterates over <Service> elements in a Yadis XRDS document and lets a caller attempt to use each one. This is used by the Yadis library internally.
-
-
- Services_Yadis_ManagerLoader -
-
- -
A session helper class designed to translate between arrays and
-
-
- SERVICES_YADIS_MATCH_ALL -
-
- -
This match mode means a given service must match ALL filters passed to the Services_Yadis_XRDS::services() call.
-
-
- SERVICES_YADIS_MATCH_ANY -
-
- -
This match mode means a given service must match ANY filters (at least one) passed to the Services_Yadis_XRDS::services() call.
-
-
- SERVICES_YADIS_MAX_PRIORITY -
-
- -
The priority value used for service elements with no priority specified.
-
-
- Services_Yadis_PHPSession -
-
- -
The base session class used by the Services_Yadis_Manager. This class wraps the default PHP session machinery and should be subclassed if your application doesn't use PHP sessioning.
-
-
- Services_Yadis_Service -
-
- -
Creates an empty service object.
-
-
- Services_Yadis_Service -
-
- -
This class represents a <Service> element in an XRDS document.
-
-
- Services_Yadis_SessionLoader -
-
- -
A session helper class designed to translate between arrays and
-
-
- Services_Yadis_setDefaultParser -
-
- -
Set a default parser to override the extension-driven selection of available parser classes. This is helpful in a test environment or one in which multiple parsers can be used but one is more desirable.
-
-
- Services_Yadis_XMLParser -
-
- -
The base class for wrappers for available PHP XML-parsing
-
-
- Services_Yadis_XRDS -
-
- -
Instantiate a Services_Yadis_XRDS object. Requires an XPath instance which has been used to parse a valid XRDS document.
-
-
- Services_Yadis_XRDS -
-
- -
This class performs parsing of XRDS documents.
-
-
- Services_Yadis_Yadis -
-
- -
Instantiates an empty Services_Yadis_Yadis object. This constructor should not be used by any user of the library.
-
-
- Services_Yadis_Yadis -
-
- -
This is the core of the PHP Yadis library. This is the only class a user needs to use to perform Yadis discovery. This class performs the discovery AND stores the result of the discovery.
-
-
- set -
-
- -
Set a session key/value pair.
-
-
- setXML -
-
- -
-
- setXML -
-
- -
-
- setXML -
-
- -
Set this parser object's XML payload. This should be overridden by subclasses.
-
-
- -
-
t
- -
-
-
-
- toSession -
-
- -
Returns an array of keys and values built from the attributes of $obj. If $this->prepareForSave($obj) returns an array, its keys and values are used to update the $data array of attributes from $obj.
-
-
- -
-
x
- -
-
-
-
- XML.php -
-
-
XML.php in XML.php
-
-
- XRDS.php -
-
-
XRDS.php in XRDS.php
-
-
- -
-
y
- -
-
-
-
- Yadis.php -
-
-
Yadis.php in Yadis.php
-
-
- -
- a - c - d - e - f - g - i - m - n - p - r - s - t - x - y -
- \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/errors.html b/modules/member/php-openid-1.2.3/doc/errors.html deleted file mode 100644 index a6162df2a..000000000 --- a/modules/member/php-openid-1.2.3/doc/errors.html +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - phpDocumentor Parser Errors and Warnings - - - - - Post-parsing
-Manager.php
-Server.php
- -

Consumer.php

-

Warnings:


-Warning on line 402 - no @package tag was used in a DocBlock for class Auth_OpenID_DiffieHellmanConsumerSession
-Warning on line 451 - no @package tag was used in a DocBlock for class Auth_OpenID_PlainTextConsumerSession
-Warning on line 874 - method "Auth_OpenID_GenericConsumer::_createAssociateRequest()" is assumed to be @access private because its name starts with _, but has no @access tag
- -

Manager.php

-

Warnings:


-Warning on line 73 - no @package tag was used in a DocBlock for class Services_Yadis_SessionLoader
-Warning on line 176 - no @package tag was used in a DocBlock for class Auth_OpenID_ServiceEndpointLoader
-Warning on line 198 - no @package tag was used in a DocBlock for class Services_Yadis_ManagerLoader
- -

Server.php

-

Warnings:


-Warning on line 372 - no @package tag was used in a DocBlock for class Auth_OpenID_PlainTextServerSession
-Warning on line 390 - no @package tag was used in a DocBlock for class Auth_OpenID_DiffieHellmanServerSession
-

- Documentation generated on Mon, 10 Sep 2007 13:29:31 -0700 by phpDocumentor 1.3.2 -

- - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/index.html b/modules/member/php-openid-1.2.3/doc/index.html deleted file mode 100644 index 8361d1f57..000000000 --- a/modules/member/php-openid-1.2.3/doc/index.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - JanRain OpenID Library - - - - - - - - - - - <H2>Frame Alert</H2> - <P>This document is designed to be viewed using the frames feature. - If you see this message, you are using a non-frame-capable web client.</P> - - - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/li_OpenID.html b/modules/member/php-openid-1.2.3/doc/li_OpenID.html deleted file mode 100644 index 4ac40e0a0..000000000 --- a/modules/member/php-openid-1.2.3/doc/li_OpenID.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - -
OpenID
- -

phpDocumentor v 1.3.2

- - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/li_Yadis.html b/modules/member/php-openid-1.2.3/doc/li_Yadis.html deleted file mode 100644 index 6005e06d8..000000000 --- a/modules/member/php-openid-1.2.3/doc/li_Yadis.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - - -
Yadis
- -

phpDocumentor v 1.3.2

- - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/doc/media/banner.css b/modules/member/php-openid-1.2.3/doc/media/banner.css deleted file mode 100644 index cd725a1d3..000000000 --- a/modules/member/php-openid-1.2.3/doc/media/banner.css +++ /dev/null @@ -1,32 +0,0 @@ -body -{ - background-color: #DDDDDD; - margin: 0px; - padding: 0px; -} - -/* Banner (top bar) classes */ - -.banner { } - -.banner-menu -{ - clear: both; - padding: .5em; - border-top: 2px solid #999999; -} - -.banner-title -{ - text-align: right; - font-size: 20pt; - font-weight: bold; - margin: .2em; -} - -.package-selector -{ - background-color: #CCCCCC; - border: 1px solid black; - color: blue; -} diff --git a/modules/member/php-openid-1.2.3/doc/media/stylesheet.css b/modules/member/php-openid-1.2.3/doc/media/stylesheet.css deleted file mode 100644 index eb73d4514..000000000 --- a/modules/member/php-openid-1.2.3/doc/media/stylesheet.css +++ /dev/null @@ -1,142 +0,0 @@ -a { color: #0000FF; text-decoration: none; } -a:hover { color: #FF0000; text-decoration: underline; } -a:active { color: #FF0000; text-decoration: underline; } - -body { background-color: #EEEEEE; font-family: Verdana, Arial, sans-serif } -body, table { font-size: 10pt } -a img { border: 0px; } -dd { margin-left: 0px; padding-left: 1em; } - -/* Page layout/boxes */ - -.info-box {} -.info-box-title { margin: 1em 0em 0em 0em; padding: .25em; font-weight: normal; font-size: 14pt; border: 2px solid #999999; background-color: #DDDDDD } -.info-box-body { border: 1px solid #999999; padding: .5em; background-color: #F8F8F8; } -.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; } - -.oddrow { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; margin-bottom: 1em} -.evenrow { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; margin-bottom: 1em} - -.page-body { max-width: 800px; margin: auto; } -.tree dl { margin: 0px } - -/* Index formatting classes */ - -.index-item-body { margin-top: .5em; margin-bottom: .5em} -.index-item-description { margin-top: .25em } -.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt } -.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em} -.index-letter-title { font-size: 12pt; font-weight: bold } -.index-letter-menu { text-align: center; margin: 1em } -.index-letter { font-size: 12pt } - -/* Docbook classes */ - -.description {} -.short-description { font-weight: bold; color: #666666; } -.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; } -.parameters { padding-left: 0em; margin-left: 3em; font-style: italic; list-style-type: square; } -.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; } -.package { } -.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black } -.package-details { font-size: 85%; } -.sub-package { font-weight: bold; font-size: 120% } -.tutorial { border-width: thin; border-color: #0066ff } -.tutorial-nav-box { width: 100%; border: 2px solid #999999; background-color: #DDDDDD } -.nav-button-disabled { color: #999999; } -.nav-button:active, -.nav-button:focus, -.nav-button:hover { background-color: #AAAAAA; outline: 1px solid #666666; text-decoration: none } -.folder-title { font-style: italic } - -/* Generic formatting */ - -.field { font-weight: bold; } -.detail { font-size: 8pt; } -.notes { font-style: italic; font-size: 8pt; } -.separator { background-color: #999999; height: 2px; } -.warning { color: #FF6600; } -.disabled { font-style: italic; color: #999999; } - -/* Code elements */ - -.line-number { } - -.class-table { width: 100%; } -.class-table-header { border-bottom: 1px dotted #666666; text-align: left} -.class-name { color: #000000; font-weight: bold; } - -.method-summary { padding-left: 1em; font-size: 8pt } -.method-header { } -.method-definition { margin-bottom: .3em } -.method-title { font-weight: bold; } -.method-name { font-weight: bold; } -.method-signature { font-size: 85%; color: #0066BB; margin: .5em 0em } -.method-result { font-style: italic; } - -.var-summary { padding-left: 1em; font-size: 8pt; } -.var-header { } -.var-title { margin-bottom: .3em } -.var-type { color: red; font-weight: bold } -.var-name { font-weight: bold; } -.var-default {} -.var-description { font-weight: normal; color: #000000; } - -.include-title { } -.include-type { font-style: italic; } -.include-name { font-weight: bold; } - -.const-title { } -.const-name { font-weight: bold; } - -/* Syntax highlighting */ - -.src-code { border: 1px solid #336699; padding: 1em; background-color: #EEEEEE; - font-family: 'Courier New', Courier, monospace; font-weight: normal; } -.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; } - -.src-comm { color: #666666; } -.src-id { } -.src-inc { color: #0000FF; } -.src-key { color: #0000FF; } -.src-num { color: #CC0000; } -.src-str { color: #66cccc; } -.src-sym { font-weight: bold; } -.src-var { } - -.src-php { font-weight: bold; } - -.src-doc { color: #009999 } -.src-doc-close-template { color: #0000FF } -.src-doc-coretag { color: #0099FF; font-weight: bold } -.src-doc-inlinetag { color: #0099FF } -.src-doc-internal { color: #6699cc } -.src-doc-tag { color: #0080CC } -.src-doc-template { color: #0000FF } -.src-doc-type { font-style: italic } -.src-doc-var { font-style: italic } - -.tute-tag { color: #009999 } -.tute-attribute-name { color: #0000FF } -.tute-attribute-value { color: #0099FF } -.tute-entity { font-weight: bold; } -.tute-comment { font-style: italic } -.tute-inline-tag { color: #636311; font-weight: bold } - -/* tutorial */ - -.authors { } -.author { font-style: italic; font-weight: bold } -.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal } -.example { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; } -.listing { background-color: #DDDDDD; border: 1px solid #999999; padding: .5em; white-space: nowrap; } -.release-info { font-size: 85%; font-style: italic; margin: 1em 0em } -.ref-title-box { } -.ref-title { } -.ref-purpose { font-style: italic; color: #666666 } -.ref-synopsis { } -.title { font-weight: bold; border-bottom: 1px solid #888888; color: #888888; } -.cmd-synopsis { margin: 1em 0em } -.cmd-title { font-weight: bold } -.toc { margin-left: 2em; padding-left: 0em } - diff --git a/modules/member/php-openid-1.2.3/doc/packages.html b/modules/member/php-openid-1.2.3/doc/packages.html deleted file mode 100644 index 3251b11eb..000000000 --- a/modules/member/php-openid-1.2.3/doc/packages.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/README b/modules/member/php-openid-1.2.3/examples/README deleted file mode 100644 index b6cbb67be..000000000 --- a/modules/member/php-openid-1.2.3/examples/README +++ /dev/null @@ -1,122 +0,0 @@ -OpenID Example Code -------------------- - -After you've installed this package (see ../README), you can use these -example packages to get started. They'll show you what this package -can do, and you can use them as the basis for your own OpenID support. - -consumer/: OpenID Example Consumer -================================== - -NOTE: If you want to try the example consumer without installing this -package, just make sure you add the package's 'Auth' directory to your -PHP include path. - -To try the example consumer implementation, just copy the consumer/ -directory into a place on your web server and point your browser at -the new directory. - -1. Check to be sure that /tmp is in your "open_basedir" configuration, - if open_basedir is being used to restrict PHP's file I/O. See - http://us2.php.net/features.safe-mode for more information. For - example, in your php.ini, change - - open_basedir = "..." - - to - - open_basedir = "/tmp:..." - - (If you really don't want to add /tmp to your open_basedir, you can - modify consumer/common.php and change $store_path so it doesn't - create the store directory in /tmp.) - -2. Copy or symlink the consumer/ directory into a part of your - webserver's docroot. For example, if your DocumentRoot is - /var/www/, do this: - - # cd /var/www - # ln -s /path/to/PHP-OpenID-X.Y.Z/examples/consumer - -3. Navigate to http://www.example.com/consumer and enter an OpenID - into the form presented there and click "Verify". - -consumer/ Files -=============== - -The 'index.php' file will render a form and get you started. These -are the example consumer files: - - consumer/index.php - Renders a form so you can begin the OpenID auth -process. The form submits the OpenID to try_auth.php. - - consumer/try_auth.php - Starts the authentication with the OpenID -server that manages your OpenID and redirects your browser to the -server's login page. Instructs the server to return to -finish_auth.php when you're done authenticating. - - consumer/finish_auth.php - Finishes the authentication by checking -the server's response. Tells you if the authentication was -successful. - - consumer/common.php - Includes the setup code you'll need to create -a Consumer object and participate in an OpenID authentication. - -server/: OpenID Example Server -============================== - -To try the example server, follow these steps: - -1. Customize server/config.php based on what your PHP installation - supports. The documentation in the file describes what each value - is for. - -2. Copy or symlink the server/ directory into a part of your - webserver's docroot. For example, if your DocumentRoot is - /var/www/, do this: - - # cd /var/www - # ln -s /path/to/PHP-OpenID-X.Y.Z/examples/server - -3. For each of the identity URLs you added to the $openid_users array - in config.php, add the following to the tag of the pages at - those URLs: - - - - Where "www.example.com/server" is the path to the server symlink - that you created in step (2). - -4. Navigate to http://www.example.com/server and click the "Log In" - link to test the OpenID(s) entered into the config file. - -5. Use the OpenID checkup tool to try authenticating with your OpenID: - - http://www.openidenabled.com/resources/openid-test/checkup - - If your OpenID server isn't on the public internet, you can use the - example consumer packaged with this library. See the consumer - section above. - -server/ Files -============= - -These files make up the server example code: - - config.php - The configuration file you'll need to customize to run -the example server. - - server.php - The PHP rendering script that takes care of handling -server requests from both regular user agents and consumers. - - lib/actions.php - Handles the various types of requests that the -server supports. - - lib/common.php - Supplies functions that wrap the OpenID API calls -to make them easier to use. - - lib/render.php - Miscellaneous page rendering code. - - lib/session.php - Code to handle session data for user settings. - - lib/render/*.php - Files for each page presented by the server. diff --git a/modules/member/php-openid-1.2.3/examples/consumer/common.php b/modules/member/php-openid-1.2.3/examples/consumer/common.php deleted file mode 100644 index cecf8d757..000000000 --- a/modules/member/php-openid-1.2.3/examples/consumer/common.php +++ /dev/null @@ -1,41 +0,0 @@ - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/consumer/finish_auth.php b/modules/member/php-openid-1.2.3/examples/consumer/finish_auth.php deleted file mode 100644 index bee574361..000000000 --- a/modules/member/php-openid-1.2.3/examples/consumer/finish_auth.php +++ /dev/null @@ -1,38 +0,0 @@ -complete($_GET); - -if ($response->status == Auth_OpenID_CANCEL) { - // This means the authentication was cancelled. - $msg = 'Verification cancelled.'; -} else if ($response->status == Auth_OpenID_FAILURE) { - $msg = "OpenID authentication failed: " . $response->message; -} else if ($response->status == Auth_OpenID_SUCCESS) { - // This means the authentication succeeded. - $openid = $response->identity_url; - $esc_identity = htmlspecialchars($openid, ENT_QUOTES); - $success = sprintf('You have successfully verified ' . - '%s as your identity.', - $esc_identity, $esc_identity); - - if ($response->endpoint->canonicalID) { - $success .= ' (XRI CanonicalID: '.$response->endpoint->canonicalID.') '; - } - - $sreg = $response->extensionResponse('sreg'); - - if (@$sreg['email']) { - $success .= " You also returned '".$sreg['email']."' as your email."; - } - if (@$sreg['postcode']) { - $success .= " Your postal code is '".$sreg['postcode']."'"; - } -} - -include 'index.php'; - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/consumer/index.php b/modules/member/php-openid-1.2.3/examples/consumer/index.php deleted file mode 100644 index 4096dedeb..000000000 --- a/modules/member/php-openid-1.2.3/examples/consumer/index.php +++ /dev/null @@ -1,59 +0,0 @@ - - PHP OpenID Authentication Example - - -

PHP OpenID Authentication Example

-

- This example consumer uses the PHP - OpenID library. It just verifies that the URL that you enter - is your identity URL. -

- - $msg"; } ?> - $error"; } ?> - $success"; } ?> - -
-
- Identity URL: - - - -
-
- - diff --git a/modules/member/php-openid-1.2.3/examples/consumer/try_auth.php b/modules/member/php-openid-1.2.3/examples/consumer/try_auth.php deleted file mode 100644 index 464dd1f09..000000000 --- a/modules/member/php-openid-1.2.3/examples/consumer/try_auth.php +++ /dev/null @@ -1,48 +0,0 @@ -begin($openid); - -// Handle failure status return values. -if (!$auth_request) { - $error = "Authentication error."; - include 'index.php'; - exit(0); -} - -$auth_request->addExtensionArg('sreg', 'optional', 'email'); - -// Redirect the user to the OpenID server for authentication. Store -// the token for this authentication so we can verify the response. - -$redirect_url = $auth_request->redirectURL($trust_root, - $process_url); - -header("Location: ".$redirect_url); - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/detect.php b/modules/member/php-openid-1.2.3/examples/detect.php deleted file mode 100644 index 29593f2ee..000000000 --- a/modules/member/php-openid-1.2.3/examples/detect.php +++ /dev/null @@ -1,496 +0,0 @@ -'; - } else { - return $href; - } - } - - function b($text) - { - return '*' . $text . '*'; - } - - function contentType() - { - return 'text/plain'; - } - - function p($text) - { - return wordwrap($text) . "\n\n"; - } - - function pre($text) - { - $out = ''; - $lines = array_map('trim', explode("\n", $text)); - foreach ($lines as $line) { - $out .= ' ' . $line . "\n"; - } - $out .= "\n"; - return $out; - } - - function ol($items) - { - $out = ''; - $c = 1; - foreach ($items as $item) { - $item = wordwrap($item, 72); - $lines = array_map('trim', explode("\n", $item)); - $out .= $c . '. ' . $lines[0] . "\n"; - unset($lines[0]); - foreach ($lines as $line) { - $out .= ' ' . $line . "\n"; - } - $out .= "\n"; - $c += 1; - } - return $out; - } - - function h2($text) - { - return $this->h($text, 2); - } - - function h1($text) - { - return $this->h($text, 1); - } - - function h($text, $n) - { - $chars = '#=+-.'; - $c = $chars[$n - 1]; - return "\n" . $text . "\n" . str_repeat($c, strlen($text)) . "\n\n"; - } - - function end() - { - return ''; - } -} - -class HTML { - function start($title) - { - return '' . $title . '' . "\n"; - } - - function tt($text) - { - return '' . $text . ''; - } - - function contentType() - { - return 'text/html'; - } - - function b($text) - { - return '' . $text . ''; - } - - function p($text) - { - return '

' . wordwrap($text) . "

\n"; - } - - function pre($text) - { - return '
' . $text . "
\n"; - } - - function ol($items) - { - $out = '
    '; - foreach ($items as $item) { - $out .= '
  1. ' . wordwrap($item) . "
  2. \n"; - } - $out .= "
\n"; - return $out; - } - - function h($text, $n) - { - return "$text\n"; - } - - function h2($text) - { - return $this->h($text, 2); - } - - function h1($text) - { - return $this->h($text, 1); - } - - function link($href, $text=null) - { - return '' . ($text ? $text : $href) . ''; - } - - function end() - { - return "\n\n"; - } -} - -if (isset($_SERVER['REQUEST_METHOD'])) { - $r = new HTML(); -} else { - $r = new PlainText(); -} - -function detect_math($r, &$out) -{ - global $_Auth_OpenID_math_extensions; - $out .= $r->h2('Math support'); - $ext = Auth_OpenID_detectMathLibrary($_Auth_OpenID_math_extensions); - if (!isset($ext['extension']) || !isset($ext['class'])) { - $out .= $r->p( - 'Your PHP installation does not include big integer math ' . - 'support. This support is required if you wish to run a ' . - 'secure OpenID server without using SSL.'); - $out .= $r->p('To use this library, you have a few options:'); - - $gmp_lnk = $r->link('http://www.php.net/manual/en/ref.gmp.php', 'GMP'); - $bc_lnk = $r->link('http://www.php.net/manual/en/ref.bc.php', 'bcmath'); - $out .= $r->ol(array( - 'Install the ' . $gmp_lnk . ' PHP extension', - 'Install the ' . $bc_lnk . ' PHP extension', - 'If your site is low-security, define ' . - 'Auth_OpenID_NO_MATH_SUPPORT. The library will function, but ' . - 'the security of your OpenID server will depend on the ' . - 'security of the network links involved. If you are only ' . - 'using consumer support, you should still be able to operate ' . - 'securely when the users are communicating with a ' . - 'well-implemented server.')); - return false; - } else { - switch ($ext['extension']) { - case 'bcmath': - $out .= $r->p('Your PHP installation has bcmath support. This is ' . - 'adequate for small-scale use, but can be CPU-intensive. ' . - 'You may want to look into installing the GMP extension.'); - $lnk = $r->link('http://www.php.net/manual/en/ref.gmp.php'); - $out .= $r->p('See ' . $lnk .' for more information ' . - 'about the GMP extension.'); - break; - case 'gmp': - $out .= $r->p('Your PHP installation has gmp support. Good.'); - break; - default: - $class = $ext['class']; - $lib = new $class(); - $one = $lib->init(1); - $two = $lib->add($one, $one); - $t = $lib->toString($two); - $out .= $r->p('Uh-oh. I do not know about the ' . - $ext['extension'] . ' extension!'); - if ($t != '2') { - $out .= $r->p('It looks like it is broken. 1 + 1 = ' . - var_export($t, false)); - return false; - } else { - $out .= $r->p('But it seems to be able to add one and one.'); - } - } - return true; // Math library is OK - } -} - -function detect_random($r, &$out) -{ - $out .= $r->h2('Cryptographic-quality randomness source'); - if (Auth_OpenID_RAND_SOURCE === null) { - $out .= $r->p('Using (insecure) pseudorandom number source, because ' . - 'Auth_OpenID_RAND_SOURCE has been defined as null.'); - return false; - } - - $msg = 'The library will try to access ' . Auth_OpenID_RAND_SOURCE - . ' as a source of random data. '; - - $numbytes = 6; - - $f = @fopen(Auth_OpenID_RAND_SOURCE, 'r'); - if ($f !== false) { - $data = fread($f, $numbytes); - $stat = fstat($f); - $size = $stat['size']; - fclose($f); - } else { - $data = null; - $size = true; - } - - if ($f !== false) { - $dataok = (strlen($data) == $numbytes); - $ok = $dataok && !$size; - $msg .= 'It seems to exist '; - if ($dataok) { - $msg .= 'and be readable. Here is some hex data: ' . - bin2hex($data) . '.'; - } else { - $msg .= 'but reading data failed.'; - } - if ($size) { - $msg .= ' This is a ' . $size . ' byte file. Unless you know ' . - 'what you are doing, it is likely that you are making a ' . - 'mistake by using a regular file as a randomness source.'; - } - } else { - $msg .= Auth_OpenID_RAND_SOURCE . - ' could not be opened. This could be because of restrictions on' . - ' your PHP environment or that randomness source may not exist' . - ' on this platform.'; - if (IS_WINDOWS) { - $msg .= ' You seem to be running Windows. This library does not' . - ' have access to a good source of randomness on Windows.'; - } - $ok = false; - } - - $out .= $r->p($msg); - - if (!$ok) { - $out .= $r->p( - 'To set a source of randomness, define Auth_OpenID_RAND_SOURCE ' . - 'to the path to the randomness source. If your platform does ' . - 'not provide a secure randomness source, the library can' . - 'operate in pseudorandom mode, but it is then vulnerable to ' . - 'theoretical attacks. If you wish to operate in pseudorandom ' . - 'mode, define Auth_OpenID_RAND_SOURCE to null.'); - $out .= $r->p('You are running on:'); - $out .= $r->pre(php_uname()); - $out .= $r->p('There does not seem to be an available source ' . - 'of randomness. On a Unix-like platform ' . - '(including MacOS X), try /dev/random and ' . - '/dev/urandom.'); - } - return $ok; -} - -function detect_stores($r, &$out) -{ - $out .= $r->h2('Data storage'); - - $found = array(); - foreach (array('sqlite', 'mysql', 'pgsql') as $dbext) { - if (extension_loaded($dbext) || @dl($dbext . '.' . PHP_SHLIB_SUFFIX)) { - $found[] = $dbext; - } - } - if (count($found) == 0) { - $text = 'No SQL database support was found in this PHP ' . - 'installation. See the PHP manual if you need to ' . - 'use an SQL database.'; - } else { - $text = 'Support was found for '; - if (count($found) == 1) { - $text .= $found[0] . '.'; - } else { - $last = array_pop($found); - $text .= implode(', ', $found) . ' and ' . $last . '.'; - } - $text = $r->b($text); - } - $text .= ' The library supports the MySQL, PostgreSQL, and SQLite ' . - 'database engines, as well as filesystem-based storage.'; - $out .= $r->p($text); - - if (function_exists('posix_getpwuid') && - function_exists('posix_geteuid')) { - $processUser = posix_getpwuid(posix_geteuid()); - $web_user = $r->b($r->tt($processUser['name'])); - } else { - $web_user = 'the PHP process'; - } - - if (in_array('sqlite', $found)) { - $out .= $r->p('If you are using SQLite, your database must be ' . - 'writable by ' . $web_user . ' and not available over' . - ' the web.'); - } - - $basedir_str = ini_get('open_basedir'); - if (gettype($basedir_str) == 'string') { - $url = 'http://www.php.net/manual/en/features.safe-mode.php' . - '#ini.open-basedir'; - $lnk = $r->link($url, 'open_basedir'); - $out .= $r->p('If you are using a filesystem-based store or SQLite, ' . - 'be aware that ' . $lnk . ' is in effect. This means ' . - 'that your data will have to be stored in one of the ' . - 'following locations:'); - $out .= $r->pre(var_export($basedir_str, true)); - } else { - $out .= $r->p('The ' . $r->b($r->tt('open_basedir')) . ' configuration restriction ' . - 'is not in effect.'); - } - - $out .= $r->p('If you are using the filesystem store, your ' . - 'data directory must be readable and writable by ' . - $web_user . ' and not availabe over the Web.'); - return true; -} - -function detect_xml($r, &$out) -{ - global $__Services_Yadis_xml_extensions; - - $out .= $r->h2('XML Support'); - - // Try to get an XML extension. - $ext = Services_Yadis_getXMLParser(); - - if ($ext !== null) { - $out .= $r->p('XML parsing support is present using the '. - $r->b(get_class($ext)).' interface.'); - return true; - } else { - $out .= $r->p('XML parsing support is absent; please install one '. - 'of the following PHP extensions:'); - foreach ($__Services_Yadis_xml_extensions as $name => $cls) { - $out .= "
  • " . $r->b($name) . "
  • "; - } - return false; - } -} - -function detect_fetcher($r, &$out) -{ - $out .= $r->h2('HTTP Fetching'); - - $result = @include 'Services/Yadis/Yadis.php'; - - if (!$result) { - $out .= $r->p('Yadis code unavailable; could not test fetcher support.'); - return false; - } - - if (Services_Yadis_Yadis::curlPresent()) { - $out .= $r->p('This PHP installation has support for libcurl. Good.'); - } else { - $out .= $r->p('This PHP installation does not have support for ' . - 'libcurl. CURL is not required, but some functionality, ' . - 'such as fetching HTTPS URLs, will be missing and ' . - ' performance will not be as good.'); - $lnk = $r->link('http://us3.php.net/manual/en/ref.curl.php'); - $out .= $r->p('See ' . $lnk . ' about enabling the libcurl support ' . - 'for PHP.'); - } - - $ok = true; - $fetcher = Services_Yadis_Yadis::getHTTPFetcher(); - $fetch_url = 'http://www.openidenabled.com/resources/php-fetch-test'; - $expected_url = $fetch_url . '.txt'; - $result = $fetcher->get($fetch_url); - - if (isset($result)) { - $parts = array('An HTTP request was completed.'); - // list ($code, $url, $data) = $result; - if ($result->status != '200') { - $ok = false; - $parts[] = $r->b( - sprintf('Got %s instead of the expected HTTP status code ' . - '(200).', $result->status)); - } - - $url = $result->final_url; - if ($url != $expected_url) { - $ok = false; - if ($url == $fetch_url) { - $msg = 'The redirected URL was not returned.'; - } else { - $msg = 'An unexpected URL was returned: <' . $url . '>.'; - } - $parts[] = $r->b($msg); - } - - $data = $result->body; - if ($data != 'Hello World!') { - $ok = false; - $parts[] = $r->b('Unexpected data was returned.'); - } - $out .= $r->p(implode(' ', $parts)); - } else { - $ok = false; - $out .= $r->p('Fetching URL ' . $lnk . ' failed!'); - } - return $ok; -} - -header('Content-Type: ' . $r->contentType() . '; charset=us-ascii'); - -$title = 'OpenID Library Support Report'; -$out = $r->start($title) . - $r->h1($title) . - $r->p('This script checks your PHP installation to determine if you ' . - 'are set up to use the JanRain PHP OpenID library.'); - -$body = ''; - -$_include = include 'Auth/OpenID.php'; - -if (!$_include) { - $path = ini_get('include_path'); - $body .= $r->p( - 'Cannot find the OpenID library. It must be in your PHP include ' . - 'path. Your PHP include path is currently:'); - $body .= $r->pre($path); -} else { - $status = array(); - - $status[] = detect_math($r, $body); - $status[] = detect_random($r, $body); - $status[] = detect_stores($r, $body); - $status[] = detect_fetcher($r, $body); - $status[] = detect_xml($r, $body); - - $result = true; - - foreach ($status as $v) { - if (!$v) { - $result = false; - break; - } - } - - if ($result) { - $out .= $r->h2('Setup Complete!'); - $out .= $r->p('Your system should be ready to run the OpenID library.'); - } else { - $out .= $r->h2('Setup Incomplete'); - $out .= $r->p('Your system needs a few changes before it will be ready to run the OpenID library.'); - } -} - -$out .= $body . $r->end(); -print $out; -?> diff --git a/modules/member/php-openid-1.2.3/examples/server/index.php b/modules/member/php-openid-1.2.3/examples/server/index.php deleted file mode 100644 index 7a9506458..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/index.php +++ /dev/null @@ -1,5 +0,0 @@ - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/lib/actions.php b/modules/member/php-openid-1.2.3/examples/server/lib/actions.php deleted file mode 100644 index 5e255e2d8..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/lib/actions.php +++ /dev/null @@ -1,169 +0,0 @@ -decodeRequest($request); - - if (!$request) { - return about_render(); - } - - setRequestInfo($request); - - if (in_array($request->mode, - array('checkid_immediate', 'checkid_setup'))) { - - if (isTrusted($request->identity, $request->trust_root)) { - $response =& $request->answer(true); - $sreg = getSreg($request->identity); - if (is_array($sreg)) { - foreach ($sreg as $k => $v) { - $response->addField('sreg', $k, - $v); - } - } - } else if ($request->immediate) { - $response =& $request->answer(false, getServerURL()); - } else { - if (!getLoggedInUser()) { - return login_render(); - } - return trust_render($request); - } - } else { - $response =& $server->handleRequest($request); - } - - $webresponse =& $server->encodeResponse($response); - - foreach ($webresponse->headers as $k => $v) { - header("$k: $v"); - } - - header(header_connection_close); - print $webresponse->body; - exit(0); -} - -/** - * Log out the currently logged in user - */ -function action_logout() -{ - setLoggedInUser(null); - setRequestInfo(null); - return authCancel(null); -} - -/** - * Check the input values for a login request - */ -function login_checkInput($input) -{ - $openid_url = false; - $errors = array(); - - if (!isset($input['openid_url'])) { - $errors[] = 'Enter an OpenID URL to continue'; - } - if (!isset($input['password'])) { - $errors[] = 'Enter a password to continue'; - } - if (count($errors) == 0) { - $openid_url = $input['openid_url']; - $openid_url = Auth_OpenID::normalizeUrl($openid_url); - $password = $input['password']; - if (!checkLogin($openid_url, $password)) { - $errors[] = 'The entered password does not match the ' . - 'entered identity URL.'; - } - } - return array($errors, $openid_url); -} - -/** - * Log in a user and potentially continue the requested identity approval - */ -function action_login() -{ - $method = $_SERVER['REQUEST_METHOD']; - switch ($method) { - case 'GET': - return login_render(); - case 'POST': - $info = getRequestInfo(); - $fields = $_POST; - if (isset($fields['cancel'])) { - return authCancel($info); - } - - list ($errors, $openid_url) = login_checkInput($fields); - if (count($errors) || !$openid_url) { - $needed = $info ? $info->identity : false; - return login_render($errors, @$fields['openid_url'], $needed); - } else { - setLoggedInUser($openid_url); - return doAuth($info); - } - default: - return login_render(array('Unsupported HTTP method: $method')); - } -} - -/** - * Ask the user whether he wants to trust this site - */ -function action_trust() -{ - $info = getRequestInfo(); - $trusted = isset($_POST['trust']); - if ($info && isset($_POST['remember'])) { - $sites = getSessionSites(); - $sites[$info->trust_root] = $trusted; - setSessionSites($sites); - } - return doAuth($info, $trusted, true); -} - -function action_sites() -{ - $sites = getSessionSites(); - if ($_SERVER['REQUEST_METHOD'] == 'POST') { - if (isset($_POST['forget'])) { - $sites = null; - setSessionSites($sites); - } elseif (isset($_POST['remove'])) { - foreach ($_POST as $k => $v) { - if (preg_match('/^site[0-9]+$/', $k) && isset($sites[$v])) { - unset($sites[$v]); - } - } - setSessionSites($sites); - } - } - return sites_render($sites); -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/lib/common.php b/modules/member/php-openid-1.2.3/examples/server/lib/common.php deleted file mode 100644 index 4bc1dac77..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/lib/common.php +++ /dev/null @@ -1,63 +0,0 @@ -getCancelURL(); - } else { - $url = getServerURL(); - } - return redirect_render($url); -} - -function doAuth($info, $trusted=null, $fail_cancels=false) -{ - if (!$info) { - // There is no authentication information, so bail - return authCancel(null); - } - - $req_url = $info->identity; - $user = getLoggedInUser(); - setRequestInfo($info); - - if ($req_url != $user) { - return login_render(array(), $req_url, $req_url); - } - - $sites = getSessionSites(); - $trust_root = $info->trust_root; - $fail_cancels = $fail_cancels || isset($sites[$trust_root]); - $trusted = isset($trusted) ? $trusted : isTrusted($req_url, $trust_root); - if ($trusted) { - setRequestInfo(); - $server =& getServer(); - $response =& $info->answer(true); - $webresponse =& $server->encodeResponse($response); - - $new_headers = array(); - - foreach ($webresponse->headers as $k => $v) { - $new_headers[] = $k.": ".$v; - } - - return array($new_headers, $webresponse->body); - } elseif ($fail_cancels) { - return authCancel($info); - } else { - return trust_render($info); - } -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/lib/render.php b/modules/member/php-openid-1.2.3/examples/server/lib/render.php deleted file mode 100644 index f607f90aa..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/lib/render.php +++ /dev/null @@ -1,112 +0,0 @@ - - - %s -%s - - - %s -
    -

    %s

    - %s -
    - -'); - -define('logged_in_pat', 'You are logged in as %s.'); - -/** - * HTTP response line contstants - */ -define('http_bad_request', 'HTTP/1.1 400 Bad Request'); -define('http_found', 'HTTP/1.1 302 Found'); -define('http_ok', 'HTTP/1.1 200 OK'); -define('http_internal_error', 'HTTP/1.1 500 Internal Error'); - -/** - * HTTP header constants - */ -define('header_connection_close', 'Connection: close'); -define('header_content_text', 'Content-Type: text/plain; charset=us-ascii'); - -define('redirect_message', - 'Please wait; you are being redirected to <%s>'); - - -/** - * Return a string containing an anchor tag containing the given URL - * - * The URL does not need to be quoted, but if text is passed in, then - * it does. - */ -function link_render($url, $text=null) { - $esc_url = htmlspecialchars($url, ENT_QUOTES); - $text = ($text === null) ? $esc_url : $text; - return sprintf('%s', $esc_url, $text); -} - -/** - * Return an HTTP redirect response - */ -function redirect_render($redir_url) -{ - $headers = array(http_found, - header_content_text, - header_connection_close, - 'Location: ' . $redir_url, - ); - $body = sprintf(redirect_message, $redir_url); - return array($headers, $body); -} - -function navigation_render($msg, $items) -{ - $what = link_render(buildURL(), 'PHP OpenID Server'); - if ($msg) { - $what .= ' — ' . $msg; - } - if ($items) { - $s = '

    ' . $what . '

      '; - foreach ($items as $action => $text) { - $url = buildURL($action); - $s .= sprintf('
    • %s
    • ', link_render($url, $text)); - } - $s .= '
    '; - } else { - $s = '

    ' . $what . '

    '; - } - return sprintf('', $s); -} - -/** - * Render an HTML page - */ -function page_render($body, $user, $title, $h1=null, $login=false) -{ - $h1 = $h1 ? $h1 : $title; - - if ($user) { - $msg = sprintf(logged_in_pat, link_render($user)); - $nav = array('logout' => 'Log Out', - 'sites' => 'Remembered Sites', - ); - $navigation = navigation_render($msg, $nav); - } else { - if (!$login) { - $msg = link_render(buildURL('login'), 'Log In'); - $navigation = navigation_render($msg, array()); - } else { - $navigation = ''; - } - } - - $style = getStyle(); - $text = sprintf(page_template, $title, $style, $navigation, $h1, $body); - // No special headers here - $headers = array(); - return array($headers, $text); -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/lib/render/about.php b/modules/member/php-openid-1.2.3/examples/server/lib/render/about.php deleted file mode 100644 index bd358369e..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/lib/render/about.php +++ /dev/null @@ -1,58 +0,0 @@ - -An error occurred when processing your request: -
    -%s -'); - -define('about_body', - '

    - This is an OpenID server - endpoint. This server is built on the JanRain PHP OpenID - library. Since OpenID consumer sites will need to directly contact this - server, it must be accessible over the Internet (not behind a firewall). -

    -

    - To use this server, you will have to set up a URL to use as an identifier. - Insert the following markup into the <head> of the HTML - document at that URL: -

    -
    <link rel="openid.server" href="%s" />
    -

    - Then configure this server so that you can log in with that URL. Once you - have configured the server, and marked up your identity URL, you can verify - that it is working by using the openidenabled.com - OpenID - Checkup tool: -

    - - -
    -

    -'); - -/** - * Render the about page, potentially with an error message - */ -function about_render($error=false, $internal=true) -{ - $headers = array(); - $body = sprintf(about_body, buildURL()); - if ($error) { - $headers[] = $internal ? http_internal_error : http_bad_request; - $body .= sprintf(about_error_template, htmlspecialchars($error)); - } - $current_user = getLoggedInUser(); - return page_render($body, $current_user, 'OpenID Server Endpoint'); -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/lib/render/login.php b/modules/member/php-openid-1.2.3/examples/server/lib/render/login.php deleted file mode 100644 index 9e8f37072..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/lib/render/login.php +++ /dev/null @@ -1,65 +0,0 @@ - -

    - Enter your identity URL and password into this form to log in to - this server. This server must be configured to accept your identity URL. -

    - -
    - - - - - - - - - - - - -
    - - -
    -
    - -'); - -define('login_needed_pat', - 'You must be logged in as %s to approve this request.'); - -function login_render($errors=null, $input=null, $needed=null) -{ - $current_user = getLoggedInUser(); - if ($input === null) { - $input = $current_user; - } - if ($needed) { - $errors[] = sprintf(login_needed_pat, link_render($needed)); - } - - $esc_input = htmlspecialchars($input, ENT_QUOTES); - $login_url = buildURL('login', true); - $body = sprintf(login_form_pat, $login_url, $esc_input); - if ($errors) { - $body = loginError_render($errors) . $body; - } - return page_render($body, $current_user, 'Log In', null, true); -} - -function loginError_render($errors) -{ - $text = ''; - foreach ($errors as $error) { - $text .= sprintf("
  • %s
  • \n", $error); - } - return sprintf("
      \n%s
    \n", $text); -} -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/lib/render/sites.php b/modules/member/php-openid-1.2.3/examples/server/lib/render/sites.php deleted file mode 100644 index 90b557f97..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/lib/render/sites.php +++ /dev/null @@ -1,83 +0,0 @@ -These decisions have been remembered for this session. All decisions -will be forgotten when the session ends.

    -
    -
    - - -%s - -
    - - - -
    -
    -'); - -define('sites_empty_message', - '

    - No sites are remembered for this session. When you authenticate with a site, - you can choose to add it to this list by choosing Remember this - decision. -

    -

    %s

    -'); - -define('sites_row', - ' - - -'); - -function siteListRow_render($i, $site) -{ - $esc_site = htmlspecialchars($site, ENT_QUOTES); - $id = sprintf('"site%s"', $i); - return sprintf(sites_row, $id, $esc_site, $id, $id, $esc_site); -} - -function siteList_render($sites) -{ - $trusted_sites = array(); - $untrusted_sites = array(); - foreach ($sites as $site => $trusted) { - if ($trusted) { - $trusted_sites[] = $site; - } else { - $untrusted_sites[] = $site; - } - } - $rows = ''; - $i = 0; - foreach (array('Trusted Sites' => $trusted_sites, - 'Untrusted Sites' => $untrusted_sites) as - $name => $sites) { - if ($sites) { - $rows .= ''. $name . ''; - foreach ($sites as $site) { - $rows .= siteListRow_render($i, $site); - $i += 1; - } - } - } - return $rows; -} - -function sites_render($sites) -{ - if ($sites) { - $rows = siteList_render($sites); - $form = sprintf(sites_form, buildURL('sites'), $rows); - $body = $pre . $form; - } else { - $body = sprintf(sites_empty_message, link_render(buildURL(''), 'Return home')); - } - return page_render($body, getLoggedInUser(), 'Remembered Sites'); -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/lib/render/trust.php b/modules/member/php-openid-1.2.3/examples/server/lib/render/trust.php deleted file mode 100644 index 60d01d05f..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/lib/render/trust.php +++ /dev/null @@ -1,29 +0,0 @@ - -

    Do you wish to confirm your identity URL (%s) with %s?

    -
    - -
    - - -
    - -'); - -function trust_render($info) -{ - $current_user = getLoggedInUser(); - $lnk = link_render($current_user); - $trust_root = htmlspecialchars($info->trust_root); - $trust_url = buildURL('trust', true); - $form = sprintf(trust_form_pat, $lnk, $trust_root, $trust_url); - return page_render($form, $current_user, 'Trust This Site'); -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/lib/session.php b/modules/member/php-openid-1.2.3/examples/server/lib/session.php deleted file mode 100644 index e11fd64db..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/lib/session.php +++ /dev/null @@ -1,205 +0,0 @@ -', $url); -} - -/** - * Get the URL of the current script - */ -function getServerURL() -{ - $path = $_SERVER['SCRIPT_NAME']; - $host = $_SERVER['HTTP_HOST']; - $port = $_SERVER['SERVER_PORT']; - $s = $_SERVER['HTTPS'] ? 's' : ''; - if (($s && $port == "443") || (!$s && $port == "80")) { - $p = ''; - } else { - $p = ':' . $port; - } - - return "http$s://$host$p$path"; -} - -/** - * Build a URL to a server action - */ -function buildURL($action=null, $escaped=true) -{ - $url = getServerURL(); - if ($action) { - $url .= '/' . $action; - } - return $escaped ? htmlspecialchars($url, ENT_QUOTES) : $url; -} - -/** - * Extract the current action from the request - */ -function getAction() -{ - $path_info = @$_SERVER['PATH_INFO']; - $action = ($path_info) ? substr($path_info, 1) : ''; - $function_name = 'action_' . $action; - return $function_name; -} - -/** - * Write the response to the request - */ -function writeResponse($resp) -{ - list ($headers, $body) = $resp; - array_walk($headers, 'header'); - header(header_connection_close); - print $body; -} - -/** - * Instantiate a new OpenID server object - */ -function getServer() -{ - static $server = null; - if (!isset($server)) { - $server =& new Auth_OpenID_Server(getOpenIDStore()); - } - return $server; -} - -/** - * Return whether the trust root is currently trusted - */ -function isTrusted($identity_url, $trust_root) -{ - // from config.php - global $trusted_sites; - - if ($identity_url != getLoggedInUser()) { - return false; - } - - if (in_array($trust_root, $trusted_sites)) { - return true; - } - - $sites = getSessionSites(); - return isset($sites[$trust_root]) && $sites[$trust_root]; -} - -/** - * Return a hashed form of the user's password - */ -function hashPassword($password) -{ - return bin2hex(Auth_OpenID_SHA1($password)); -} - -/** - * Check the user's login information - */ -function checkLogin($openid_url, $password) -{ - // from config.php - global $openid_users; - $hash = hashPassword($password); - - return isset($openid_users[$openid_url]) - && $hash == $openid_users[$openid_url]; -} - -/** - * Get the openid_url out of the cookie - * - * @return mixed $openid_url The URL that was stored in the cookie or - * false if there is none present or if the cookie is bad. - */ -function getLoggedInUser() -{ - return isset($_SESSION['openid_url']) - ? $_SESSION['openid_url'] - : false; -} - -/** - * Set the openid_url in the cookie - * - * @param mixed $identity_url The URL to set. If set to null, the - * value will be unset. - */ -function setLoggedInUser($identity_url=null) -{ - if (!isset($identity_url)) { - unset($_SESSION['openid_url']); - } else { - $_SESSION['openid_url'] = $identity_url; - } -} - -function setSessionSites($sites=null) -{ - if (!isset($sites)) { - unset($_SESSION['session_sites']); - } else { - $_SESSION['session_sites'] = serialize($sites); - } -} - -function getSessionSites() -{ - return isset($_SESSION['session_sites']) - ? unserialize($_SESSION['session_sites']) - : false; -} - -function getRequestInfo() -{ - return isset($_SESSION['request']) - ? unserialize($_SESSION['request']) - : false; -} - -function setRequestInfo($info=null) -{ - if (!isset($info)) { - unset($_SESSION['request']); - } else { - $_SESSION['request'] = serialize($info); - } -} - - -function getSreg($identity) -{ - // from config.php - global $openid_sreg; - - if (!is_array($openid_sreg)) { - return null; - } - - return $openid_sreg[$identity]; - -} - -?> \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/openid-server.css b/modules/member/php-openid-1.2.3/examples/server/openid-server.css deleted file mode 100644 index badff2395..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/openid-server.css +++ /dev/null @@ -1,74 +0,0 @@ -body { - padding: 0; - margin: 0; -} - -#content { - padding: 0.5em; - max-width: 50em; -} - -ul.error { - background: #ffaaaa; - border: 1px solid #ff0000; - padding: 0.5em; - padding-left: 1.5em; -} - -.login th { - text-align: left; -} - -div.form { - border: thin solid #777777; - background: #dddddd; - padding: 0.5em; - margin-top: 1em; -} - -div.navigation { - border-bottom: thin solid #cccccc; - background: #eeeeee; - font-size: smaller; - padding: 0.5em; -} - -div.navigation h2 { - margin-top: 0; -} - -div.navigation p { - margin: 0; -} - -div.navigation ul { - margin: 0; -} - -div.login p { - margin-top: 0; -} - -h1 { - margin-top: 0; -} - -pre { - padding: 1em; - border: 1px solid black; - background: #ffeebb; -} - -#checkup { - background: url('http://www.openidenabled.com/favicon.ico') no-repeat; - padding-left: 16px; -} - -th { - text-align: left; -} - -table { - border-collapse: collapse; - margin-bottom: 1em; -} \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/server.php b/modules/member/php-openid-1.2.3/examples/server/server.php deleted file mode 100644 index 727b8dd3c..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/server.php +++ /dev/null @@ -1,45 +0,0 @@ - - - - PHP OpenID Server - -

    PHP OpenID Server

    -

    - This server needs to be configured before it can be used. Edit - config.php to reflect your server's setup, then - load this page again. -

    - - - - \ No newline at end of file diff --git a/modules/member/php-openid-1.2.3/examples/server/setup.php b/modules/member/php-openid-1.2.3/examples/server/setup.php deleted file mode 100644 index 0e26be611..000000000 --- a/modules/member/php-openid-1.2.3/examples/server/setup.php +++ /dev/null @@ -1,690 +0,0 @@ - - * @copyright 2005 Janrain, Inc. - * @license http://www.gnu.org/copyleft/lesser.html LGPL - */ - -$path_extra = dirname(dirname(dirname(__FILE__))); -$path = ini_get('include_path'); -$path = $path_extra . PATH_SEPARATOR . $path; -ini_set('include_path', $path); -require_once "Auth/OpenID.php"; - -/** - * Data. - */ - -$store_types = array("Filesystem" => "Auth_OpenID_FileStore", - "MySQL" => "Auth_OpenID_MySQLStore", - "PostgreSQL" => "Auth_OpenID_PostgreSQLStore", - "SQLite" => "Auth_OpenID_SQLiteStore"); - -/** - * Main. - */ - -$messages = array(); - -session_start(); -init_session(); - -if (!check_session() || - isset($_GET['add_openid'])) { - render_form(); -} else { - print generate_config(isset($_GET['download'])); -} - -/** - * Functions. - */ - -function check_url($url) { - return (Auth_OpenID::normalizeUrl($url) !== null); -} - -function build_url() { - $port = (($_SERVER['SERVER_PORT'] == 80) ? null : $_SERVER['SERVER_PORT']); - - $parts = explode("/", $_SERVER['SERVER_PROTOCOL']); - $scheme = strtolower($parts[0]); - - if ($port) { - return sprintf("%s://%s:%s%s/server.php", $scheme, $_SERVER['SERVER_NAME'], - $port, dirname($_SERVER['PHP_SELF'])); - } else { - return sprintf("%s://%s%s/server.php", $scheme, $_SERVER['SERVER_NAME'], - dirname($_SERVER['PHP_SELF'])); - } -} - -function check_open_basedir($path) { - if (ini_get('open_basedir')) { - $parts = explode(PATH_SEPARATOR, ini_get('open_basedir')); - - $found = false; - - foreach ($parts as $p) { - if (strpos($path, $p) === 0) { - $found = true; - break; - } - } - - return $found; - } else { - return true; - } -} - -function check_session() { - - global $messages; - - if ($_GET && isset($_GET['clear'])) { - session_destroy(); - $_SESSION = array(); - init_session(); - return false; - } - - $bad_path = false; - - if (isset($_GET['generate'])) { - if (!$_SESSION['server_url']) { - $messages[] = "Please enter a server URL."; - } - - if (!$_SESSION['store_type']) { - $messages[] = "No store type chosen."; - } else { - switch ($_SESSION['store_type']) { - case "Filesystem": - if (!$_SESSION['store_data']['fs_path']) { - $messages[] = "Please specify a filesystem store path."; - } else { - if (!check_open_basedir($_SESSION['store_data']['fs_path'])) { - $messages[] = "The filesystem store path violates PHP's open_basedir setting."; - $bad_path = true; - } - } - break; - - case "SQLite": - if (!$_SESSION['store_data']['sqlite_path']) { - $messages[] = "Please specify a SQLite database path."; - } else { - if (!check_open_basedir($_SESSION['store_data']['sqlite_path'])) { - $messages[] = "The SQLite store path violates PHP's open_basedir setting."; - $bad_path = true; - } - } - break; - - default: - if (!($_SESSION['store_data']['host'] && - $_SESSION['store_data']['database'] && - $_SESSION['store_data']['username'] && - $_SESSION['store_data']['password'])) { - $messages[] = "Please specify database connection details."; - } - } - } - } - - if ($_SESSION['store_type'] && - $_SESSION['server_url'] && - (parse_url($_SESSION['server_url']) !== false) && - ((($_SESSION['store_type'] == 'Filesystem') && - $_SESSION['store_data']['fs_path']) || - (($_SESSION['store_type'] == 'SQLite') && - $_SESSION['store_data']['sqlite_path']) || - ($_SESSION['store_data']['host'] && - $_SESSION['store_data']['username'] && - $_SESSION['store_data']['database'] && - $_SESSION['store_data']['password'])) && - !$bad_path) { - - return true; - } - - return false; -} - -function render_form() { - - global $store_types, $fields, $messages; - - $basedir_msg = ""; - - if (ini_get('open_basedir')) { - $basedir_msg = "
    Note: Due to the ". - "open_basedir php.ini setting, be sure to ". - "choose a path in one of the following directories:
    • ". - implode("
    • ", - explode(PATH_SEPARATOR, ini_get('open_basedir'))). - "
    "; - } - - $sqlite_found = false; - if (extension_loaded('sqlite') || - @dl('sqlite.' . PHP_SHLIB_SUFFIX)) { - $sqlite_found = true; - } - - $mysql_found = false; - if (extension_loaded('mysql') || - @dl('mysql.' . PHP_SHLIB_SUFFIX)) { - $mysql_found = true; - } - - $pgsql_found = false; - if (extension_loaded('pgsql') || - @dl('pgsql.' . PHP_SHLIB_SUFFIX)) { - $pgsql_found = true; - } - -?> - - - - - - -

    OpenID Example Server Configuration

    - -"; - foreach ($messages as $m) { - print "
    $m
    "; - } - print ""; - -} -?> - -

    -Your browser has been redirected to this page so you can configure the -server example. This form will auto-generate an OpenID example server -configuration for use with the OpenID server example. -

    - -
    -
    - -

    - The server URL is the URL that points to the "server.php" file. It - looks like your server URL should be . -

    - - - - - -
    - -
    - -

    - If this package isn't installed in the PHP include path, the package's - directory should be added. For example, if the package is in - /home/me/PHP-OpenID/, you should enter that directory here. -

    - - - - - - - -
    - -
    - -

    - The server needs to store OpenID information in a "store". The - following store types are available on your PHP installation: -

    - - Store method: -
    - -
    - > - -
    - - - -
    -
    - - -
    - > - -
    - - - -
    -
    - - - - -
    - - - > - - - - - > - - - -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - -
    -
    -
    - -

    - Your OpenID server will need to know what URLs it can authenticate. Supply URLs and passwords here. -

    - - OpenID URLs to serve: - -
    -"; - foreach ($_SESSION['users'] as $url => $p) { - print ""; - } - print "
    OpenID URLPassword Hash
    ".$url."".$p."
    "; -} -?> -
    - Add an OpenID: -
    - -
    -
    - -
    -
    - -
    - - -
    - -
    - - -
    - -

    - Your OpenID server can be configured to trust a set of sites by default. Enter those here. -

    - - Trusted sites: - -
    -"; - foreach ($_SESSION['trust_roots'] as $url) { - print ""; - } - print "
    Trusted site URL
    ".$url."
    "; -} -?> -
    - Add a trusted site: -
    - -
    -
    - -
    - - - -
    - - - - - - -

    OpenID Example Server Configuration

    - -

    -Put the following text into config.php. -

    - -

    -Back to form (resets settings) -

    - -

    -Download this configuration -

    - -
    -
    -
    -/**
    - * Set any extra include paths needed to use the library
    - */
    -set_include_path(get_include_path() . PATH_SEPARATOR . "");
    -
    -
    -/**
    - * The URL for the server.
    - *
    - * This is the location of server.php. For example:
    - *
    - * $server_url = 'http://example.com/~user/server.php';
    - *
    - * This must be a full URL.
    - */
    -$server_url = "";
    -
    -/**
    - * Initialize an OpenID store
    - *
    - * @return object $store an instance of OpenID store (see the
    - * documentation for how to create one)
    - */
    -function getOpenIDStore()
    -{
    -    require_once 'Auth/OpenID/MySQLStore.php';
    -    require_once 'DB.php';
    -
    -    $dsn = array(
    -                 'phptype'  => 'mysql',
    -                 'username' => '',
    -                 'password' => '',
    -                 'hostspec' => ''
    -                 );
    -
    -    $db =& DB::connect($dsn);
    -
    -    if (PEAR::isError($db)) {
    -        return null;
    -    }
    -
    -    $db->query("USE ");
    -        
    -    return new Auth_OpenID_MySQLStore($db);
    -require_once 'Auth/OpenID/PostgreSQLStore.php';
    -    require_once 'DB.php';
    -
    -    $dsn = array(
    -                 'phptype'  => 'pgsql',
    -                 'username' => '',
    -                 'password' => '',
    -                 'hostspec' => '',
    -                 'database' => ''
    -                 );
    -
    -    $db =& DB::connect($dsn);
    -
    -    if (PEAR::isError($db)) {
    -        return null;
    -    }
    -
    -    return new Auth_OpenID_PostgreSQLStore($db);
    -
    -}
    -
    -/**
    - * Users who are allowed to log in to this OpenID server.
    - *
    - * This is an array from URL to password hash. The URL must include
    - * the proper OpenID server information in order to work with this
    - * server.
    - *
    - * This must be set for the server to be usable. If it is not set, no
    - * users will be able to log in.
    - *
    - * Example:
    - * $openid_users = array(
    - *                    'http://joe.example.com/' => sha1('foo')
    - *                      )
    - */
    -$openid_users = array( $hash) {
    -    $i++;
    -    print "\n    '$url' => '$hash'";
    -    if ($i < count($_SESSION['users'])) {
    -        print ",";
    -    }
    -}
    -?>
    -
    -);
    -
    -/**
    - * Trusted sites is an array of trust roots.
    - *
    - * Sites in this list will not have to be approved by the user in
    - * order to be used. It is OK to leave this value as-is.
    - *
    - * In a more robust server, this should be a per-user setting.
    - */
    -$trusted_sites = array(
    -
    -);
    -
    -
    - - -