diff options
Diffstat (limited to 'src/leap/base')
| -rw-r--r-- | src/leap/base/tests/test_auth.py | 45 | 
1 files changed, 23 insertions, 22 deletions
diff --git a/src/leap/base/tests/test_auth.py b/src/leap/base/tests/test_auth.py index 5652743d..541dea61 100644 --- a/src/leap/base/tests/test_auth.py +++ b/src/leap/base/tests/test_auth.py @@ -24,14 +24,15 @@ PASSWORD = "WG3HD06E7ZF3"  INIT_DATA = {u'B': u'd74a9f592193bba8a818dcf500f412f60ce1b999aa9b5166f59fbe02aee97be9ec71a5d62fd16dedd973041efd4c7de0568c0d0c38a3806c78fc96f9ffa59dde89e5a04969905a83b8e700ee9c03b5636ad99624ed1514319b3bdac10cde498c8e064adf2fe04bfc5ee5df0dd06693961190a16caa182c090e59ac52feec693e',                u'salt': u'd09ed33e'}  AUTH_RESULT = {u'M2': u'b040d0cd7ab1f93c4e87ffccdec07491782f2af303ad14f33dc4f0b4b2e40824'} +session_id = "'BAh7ByIPc2Vzc2lvbl9pZCIlNGU2ZGNhZDc4ZjNmMzE5YzRlMGUyNzJkMzBhYTA5ZTgiDHVzZXJfaWQiJWRhYzJmZGI4YTM5YmFjZGY4M2YyOWI4NDk2NTYzMDFl--6a322f6acb2f52b995bade4eaf54bd21820ab742"  class SRP_SERVER_HTTPSTests(BaseHTTPSServerTestCase, BaseLeapTest):      class request_handler(NoLogRequestHandler, BaseHTTPRequestHandler):          responses = { -            '/': [ 'OK', '' ], -            '/1/sessions': [ json.dumps(INIT_DATA) ], -            '/1/sessions/' + USERNAME: [ json.dumps(AUTH_RESULT) ] +            '/': ['OK', ''], +            '/1/sessions': [json.dumps(INIT_DATA)], +            '/1/sessions/' + USERNAME: [json.dumps(AUTH_RESULT)]              }          def do_GET(self): @@ -93,19 +94,21 @@ class SRP_SERVER_HTTPSTests(BaseHTTPSServerTestCase, BaseLeapTest):          with patch.object(SRPAuth, "get_data") as mocked_post:              with self.assertRaises(SRPAuthenticationError):                  mocked_post.return_value = json.loads( -                                '{"salt":"%s", "B":"%s", "M2":"%s"}' % -                                (binascii.hexlify("fake"), binascii.hexlify("sofake"), -                                binascii.hexlify("realfake"))) +                            '{"salt":"%s", "B":"%s", "M2":"%s"}' % +                            (binascii.hexlify("fake"), +                             binascii.hexlify("sofake"), +                             binascii.hexlify("realfake")))                  srp_auth.authenticate()          srp_auth.authenticate() +  class SRP_Protected_URI_Sequence(BaseHTTPSServerTestCase, BaseLeapTest):      class request_handler(NoLogRequestHandler, BaseHTTPRequestHandler):          # XXX get the real URIs and find the server side auth sequence          responses = { -            '/1/get_cookie' : '', -            '/1/get_protected' : '', +            '/1/cert': '', +            '/1/get_protected': '',              }          def do_GET(self): @@ -113,24 +116,22 @@ class SRP_Protected_URI_Sequence(BaseHTTPSServerTestCase, BaseLeapTest):              message = '\n'.join(self.responses.get(                  path.path, None))              self.send_response(200) -            if path.path == "/1/get_cookie": -                self.send_header("set-cookie", "authorized=True") +            if path.path == "/1/cert": +                self.send_header("set-cookie", "_session_id=" + session_id)              if path.path == "/1/get_protected":                  # XXX use a cookie library to do some abstraction                  # and make this prettier -                if self.headers.has_key("cookie") and \ -                   self.headers["cookie"].find("authorized=True") > -1: -                    self.send_header("set-cookie", "damn=right")     +                if "cookie" in self.headers and \ +                   self.headers["cookie"].find("_session_id") > -1: +                    self.send_header("set-cookie", "damn=right")              self.end_headers()              self.wfile.write(message) -      def test_srp_protected_uri(self): -         print self.get_server() -         s = requests.session() -         r1 = s.get("https://%s/1/get_cookie" % self.get_server(), verify=False) -         self.assertEquals(r1.cookies["authorized"], 'True') -         r2 = s.get("https://%s/1/get_protected" % self.get_server(), verify=False) -         self.assertEquals(r2.cookies["damn"], 'right') -        - +        s = requests.session() +        r1 = s.get("https://%s/1/cert" % +                self.get_server(), verify=False) +        self.assertEquals(r1.cookies["_session_id"], session_id) +        r2 = s.get("https://%s/1/get_protected" % +                self.get_server(), verify=False) +        self.assertEquals(r2.cookies["damn"], 'right')  | 
