From 8b7b19532be7fbb9211bf2179debbab6cef19510 Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Mon, 26 Aug 2013 15:32:15 +0200 Subject: add manifest to gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index e0d60cb..25876cf 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ *.swo dist/ build/ +MANIFEST -- cgit v1.2.3 From 35e5e7623c260bd35cb924b65f21350145e12233 Mon Sep 17 00:00:00 2001 From: Ivan Alejandro Date: Wed, 28 Aug 2013 13:14:09 -0300 Subject: Use dirspec instead of plain xdg. Closes #3574. --- .../feature-3574_use-dirspec-instead-of-plain-xdg | 1 + pkg/requirements.pip | 2 +- src/leap/common/config/__init__.py | 39 ++++++ src/leap/common/config/baseconfig.py | 5 +- src/leap/common/config/prefixers.py | 132 --------------------- .../common/config/tests/test_get_path_prefix.py | 63 ++++++++++ 6 files changed, 106 insertions(+), 136 deletions(-) create mode 100644 changes/feature-3574_use-dirspec-instead-of-plain-xdg delete mode 100644 src/leap/common/config/prefixers.py create mode 100644 src/leap/common/config/tests/test_get_path_prefix.py diff --git a/changes/feature-3574_use-dirspec-instead-of-plain-xdg b/changes/feature-3574_use-dirspec-instead-of-plain-xdg new file mode 100644 index 0000000..9bdc507 --- /dev/null +++ b/changes/feature-3574_use-dirspec-instead-of-plain-xdg @@ -0,0 +1 @@ + o Use dirspec instead of plain xdg. Closes #3574. diff --git a/pkg/requirements.pip b/pkg/requirements.pip index 9617d92..c89fd19 100644 --- a/pkg/requirements.pip +++ b/pkg/requirements.pip @@ -1,5 +1,5 @@ jsonschema #<=0.8 -- are we done with this conflict? -pyxdg +dirspec protobuf>=2.4.1 protobuf.socketrpc pyopenssl diff --git a/src/leap/common/config/__init__.py b/src/leap/common/config/__init__.py index e69de29..68d92dc 100644 --- a/src/leap/common/config/__init__.py +++ b/src/leap/common/config/__init__.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +# __init__.py +# Copyright (C) 2013 LEAP +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +""" +Common configs +""" +import os + +from dirspec.basedir import get_xdg_config_home + + +def get_path_prefix(standalone=False): + """ + Returns the platform dependent path prefix. + + :param standalone: if True it will return the prefix for a standalone + application. + Otherwise, it will return the system default for + configuration storage. + :type standalone: bool + """ + config_home = get_xdg_config_home() + if standalone: + config_home = os.path.join(os.getcwd(), "config") + + return config_home diff --git a/src/leap/common/config/baseconfig.py b/src/leap/common/config/baseconfig.py index e310bc0..2d98031 100644 --- a/src/leap/common/config/baseconfig.py +++ b/src/leap/common/config/baseconfig.py @@ -29,7 +29,7 @@ from abc import ABCMeta, abstractmethod from leap.common.check import leap_assert, leap_check from leap.common.files import mkdir_p from leap.common.config.pluggableconfig import PluggableConfig -from leap.common.config.prefixers import get_platform_prefixer +from leap.common.config import get_path_prefix logger = logging.getLogger(__name__) @@ -108,8 +108,7 @@ class BaseConfig: """ Returns the platform dependant path prefixer """ - return get_platform_prefixer().get_path_prefix( - standalone=self.standalone) + return get_path_prefix(standalone=self.standalone) def loaded(self): """ diff --git a/src/leap/common/config/prefixers.py b/src/leap/common/config/prefixers.py deleted file mode 100644 index 9a5b043..0000000 --- a/src/leap/common/config/prefixers.py +++ /dev/null @@ -1,132 +0,0 @@ -# -*- coding: utf-8 -*- -# prefixers.py -# Copyright (C) 2013 LEAP -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -""" -Platform dependant configuration path prefixers -""" -import os -import platform - -from abc import ABCMeta, abstractmethod -from xdg import BaseDirectory - -from leap.common.check import leap_assert - - -class Prefixer: - """ - Abstract prefixer class - """ - - __metaclass__ = ABCMeta - - @abstractmethod - def get_path_prefix(self, standalone=False): - """ - Returns the platform dependant path prefixer - - :param standalone: if True it will return the prefix for a - standalone application. Otherwise, it will return the system - default for configuration storage. - :type standalone: bool - """ - return "" - - -def get_platform_prefixer(): - prefixer = globals()[platform.system() + "Prefixer"] - leap_assert(prefixer, "Unimplemented platform prefixer: %s" % - (platform.system(),)) - return prefixer() - - -class LinuxPrefixer(Prefixer): - """ - Config prefixer for the Linux platform - """ - - def get_path_prefix(self, standalone=False): - """ - Returns the platform dependant path prefixer. - This method expects an env variable named LEAP_CLIENT_PATH if - standalone is used. - - :param standalone: if True it will return the prefix for a - standalone application. Otherwise, it will return the system - default for configuration storage. - :type standalone: bool - """ - config_dir = BaseDirectory.xdg_config_home - if not standalone: - return config_dir - return os.path.join(os.getcwd(), "config") - - -class DarwinPrefixer(Prefixer): - """ - Config prefixer for the Darwin platform - """ - - def get_path_prefix(self, standalone=False): - """ - Returns the platform dependant path prefixer. - This method expects an env variable named LEAP_CLIENT_PATH if - standalone is used. - - :param standalone: if True it will return the prefix for a - standalone application. Otherwise, it will return the system - default for configuration storage. - :type standalone: bool - """ - config_dir = BaseDirectory.xdg_config_home - if not standalone: - return config_dir - return os.path.join(os.getcwd(), "config") - - -class WindowsPrefixer(Prefixer): - """ - Config prefixer for the Windows platform - """ - - def get_path_prefix(self, standalone=False): - """ - Returns the platform dependant path prefixer. - This method expects an env variable named LEAP_CLIENT_PATH if - standalone is used. - - :param standalone: if True it will return the prefix for a - standalone application. Otherwise, it will return the system - default for configuration storage. - :type standalone: bool - """ - config_dir = BaseDirectory.xdg_config_home - - if not standalone: - return config_dir - return os.path.join(os.getcwd(), "config") - -if __name__ == "__main__": - try: - abs_prefixer = Prefixer() - except Exception as e: - assert isinstance(e, TypeError), "Something went wrong" - print "Abstract Prefixer class is working as expected" - - linux_prefixer = LinuxPrefixer() - print linux_prefixer.get_path_prefix(standalone=True) - print linux_prefixer.get_path_prefix() diff --git a/src/leap/common/config/tests/test_get_path_prefix.py b/src/leap/common/config/tests/test_get_path_prefix.py new file mode 100644 index 0000000..27824fc --- /dev/null +++ b/src/leap/common/config/tests/test_get_path_prefix.py @@ -0,0 +1,63 @@ +# -*- coding: utf-8 -*- +# test_get_path_prefix.py +# Copyright (C) 2013 LEAP +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +""" +Tests for get_path_prefix +""" +import os +import mock + +try: + import unittest2 as unittest +except ImportError: + import unittest + +from leap.common.config import get_path_prefix +from leap.common.testing.basetest import BaseLeapTest + + +class GetPathPrefixTest(BaseLeapTest): + """ + Tests for the get_path_prefix helper. + + Note: we only are testing that the path is correctly returned and that if + we are not in a bundle (standalone=False) then the paths are different. + + dirspec calculates the correct path using different methods and dlls + (in case of Windows) so we don't implement tests to check if the paths + are the correct ones. + """ + def setUp(self): + pass + + def tearDown(self): + pass + + def test_standalone_path(self): + expected_path = os.path.join('expected', 'path', 'config') + fake_cwd = os.path.join('expected', 'path') + with mock.patch('os.getcwd', lambda: fake_cwd): + path = get_path_prefix(standalone=True) + self.assertEquals(path, expected_path) + + def test_path_prefix(self): + standalone_path = get_path_prefix(standalone=True) + path = get_path_prefix(standalone=False) + self.assertNotEquals(path, standalone_path) + + +if __name__ == "__main__": + unittest.main(verbosity=2) -- cgit v1.2.3 From 0aeced28f7e8c87d59e9a057b6aea9bdcd37fc02 Mon Sep 17 00:00:00 2001 From: Ivan Alejandro Date: Thu, 29 Aug 2013 18:07:15 -0300 Subject: Update baseconfig tests to use schema correctly. --- src/leap/common/config/tests/test_baseconfig.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/leap/common/config/tests/test_baseconfig.py b/src/leap/common/config/tests/test_baseconfig.py index 8a2915e..8bdf4d0 100644 --- a/src/leap/common/config/tests/test_baseconfig.py +++ b/src/leap/common/config/tests/test_baseconfig.py @@ -113,9 +113,12 @@ class TestConfig(BaseConfig): def get_version(self): return self._safe_get_value("version") - def _get_spec(self): + def _get_schema(self): return sample_spec + def _get_spec(self): + return self._get_schema() + def get_default_language(self): return self._safe_get_value("default_language") -- cgit v1.2.3 From f3b3982a0e53b1ff2cfc7fa9c3288e3156bfdd55 Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Tue, 3 Sep 2013 15:51:54 +0200 Subject: Fix Exception use --- changes/bug-fix-exception | 1 + src/leap/common/events/client.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 changes/bug-fix-exception diff --git a/changes/bug-fix-exception b/changes/bug-fix-exception new file mode 100644 index 0000000..866c39a --- /dev/null +++ b/changes/bug-fix-exception @@ -0,0 +1 @@ + o Correct use of CallbackAlreadyRegistered exception diff --git a/src/leap/common/events/client.py b/src/leap/common/events/client.py index 4ae9bff..816cec1 100644 --- a/src/leap/common/events/client.py +++ b/src/leap/common/events/client.py @@ -120,7 +120,7 @@ def register(signal, callback, uid=None, replace=False, reqcbk=None, cbklist = registered_callbacks[signal] if uid and filter(lambda (x, y): x == uid, cbklist): if not replace: - raise CallbackAlreadyRegisteredException() + raise CallbackAlreadyRegistered() else: registered_callbacks[signal] = filter(lambda(x, y): x != uid, cbklist) -- cgit v1.2.3 From 21b7235a4368c6681f2788893dd5073c9fffd37d Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Tue, 3 Sep 2013 15:52:39 +0200 Subject: cosmetic changes to imports --- src/leap/common/events/client.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/leap/common/events/client.py b/src/leap/common/events/client.py index 816cec1..ff1f52a 100644 --- a/src/leap/common/events/client.py +++ b/src/leap/common/events/client.py @@ -14,7 +14,6 @@ # # You should have received a copy of the GNU General Public License # along with this program. If not, see . - """ The client end point of the events mechanism. @@ -27,18 +26,15 @@ server that it wants to be notified whenever signals of that type are sent by some other client. """ - import logging -import threading from protobuf.socketrpc import RpcService -from leap.common.events import ( - events_pb2 as proto, - server, - daemon, - mac_auth, -) + +from leap.common.events import events_pb2 as proto +from leap.common.events import server +from leap.common.events import daemon +from leap.common.events import mac_auth logger = logging.getLogger(__name__) @@ -118,6 +114,10 @@ def register(signal, callback, uid=None, replace=False, reqcbk=None, if signal not in registered_callbacks: registered_callbacks[signal] = [] cbklist = registered_callbacks[signal] + + # TODO should check that the callback has the right + # number of arguments. + if uid and filter(lambda (x, y): x == uid, cbklist): if not replace: raise CallbackAlreadyRegistered() -- cgit v1.2.3 From 2c2f1eb7714bf98059b6966e08d01897c5626bd4 Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Tue, 3 Sep 2013 15:53:04 +0200 Subject: change verbosity level in logging --- src/leap/common/events/client.py | 11 ++++++----- src/leap/common/events/server.py | 11 ++++++----- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/leap/common/events/client.py b/src/leap/common/events/client.py index ff1f52a..83f18e0 100644 --- a/src/leap/common/events/client.py +++ b/src/leap/common/events/client.py @@ -133,12 +133,13 @@ def register(signal, callback, uid=None, replace=False, reqcbk=None, request.mac = "" service = RpcService(proto.EventsServerService_Stub, server.SERVER_PORT, 'localhost') - logger.info( + logger.debug( "Sending registration request to server on port %s: %s", server.SERVER_PORT, str(request)[:40]) return service.register(request, callback=reqcbk, timeout=timeout) + def unregister(signal, uid=None, reqcbk=None, timeout=1000): """ Unregister a callback. @@ -226,7 +227,7 @@ def signal(signal, content="", mac_method="", mac="", reqcbk=None, request.mac = mac service = RpcService(proto.EventsServerService_Stub, server.SERVER_PORT, 'localhost') - logger.info("Sending signal to server: %s", str(request)[:40]) + logger.debug("Sending signal to server: %s", str(request)[:40]) return service.signal(request, callback=reqcbk, timeout=timeout) @@ -251,7 +252,7 @@ def ping(port, reqcbk=None, timeout=1000): proto.EventsClientService_Stub, port, 'localhost') - logger.info("Pinging a client in port %d..." % port) + logger.debug("Pinging a client in port %d..." % port) return service.ping(request, callback=reqcbk, timeout=timeout) @@ -277,7 +278,7 @@ class EventsClientService(proto.EventsClientService): :param done: callback to be called when done :type done: protobuf.socketrpc.server.Callback """ - logger.info('Received signal from server: %s...' % str(request)[:40]) + logger.debug('Received signal from server: %s...' % str(request)[:40]) # run registered callbacks # TODO: verify authentication using mac in incoming message @@ -303,7 +304,7 @@ class EventsClientService(proto.EventsClientService): :param done: callback to be called when done :type done: protobuf.socketrpc.server.Callback """ - logger.info("Received ping request, sending response.") + logger.debug("Received ping request, sending response.") response = proto.EventResponse() response.status = proto.EventResponse.OK done.run(response) diff --git a/src/leap/common/events/server.py b/src/leap/common/events/server.py index 861cb4f..dc55551 100644 --- a/src/leap/common/events/server.py +++ b/src/leap/common/events/server.py @@ -85,6 +85,7 @@ def ensure_server(port=SERVER_PORT): logger.info('Launching server on port %d.', port) return EventsServerDaemon.ensure(port) + def process_ping(port, request, response): """ Response callback for the ping event. @@ -100,7 +101,7 @@ def process_ping(port, request, response): logger.info('A server is already running on port %d.', port) return # port is taken, and not by an events server - logger.info('Port %d is taken by something not an events server.', port) + logger.warning('Port %d is taken by something not an events server.', port) raise PortAlreadyTaken(port) @@ -125,7 +126,7 @@ def ping(port=SERVER_PORT, reqcbk=None, timeout=1000): proto.EventsServerService_Stub, port, 'localhost') - logger.info("Pinging server in port %d..." % port) + logger.debug("Pinging server in port %d..." % port) return service.ping(request, callback=reqcbk, timeout=timeout) @@ -196,14 +197,14 @@ class EventsServerService(proto.EventsServerService): :param done: callback to be called when done :type done: protobuf.socketrpc.server.Callback """ - logger.info('Received signal from client: %s...', str(request)[:40]) + logger.debug('Received signal from client: %s...', str(request)[:40]) # send signal to all registered clients # TODO: verify signal auth if request.event in registered_clients: for port in registered_clients[request.event]: def callback(req, resp): - logger.info("Signal received by " + str(port)) + logger.debug("Signal received by " + str(port)) service = RpcService(proto.EventsClientService_Stub, port, 'localhost') @@ -224,7 +225,7 @@ class EventsServerService(proto.EventsServerService): :param done: callback to be called when done :type done: protobuf.socketrpc.server.Callback """ - logger.info("Received ping request, sending response.") + logger.debug("Received ping request, sending response.") response = proto.EventResponse() response.status = proto.EventResponse.OK done.run(response) -- cgit v1.2.3 From de79007ff86c20a839b791e0f3bb1f17212c4bb4 Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Tue, 3 Sep 2013 17:32:47 +0200 Subject: renew the certs used for testing --- src/leap/common/testing/cacert.pem | 49 ++++++----- src/leap/common/testing/leaptestscert.pem | 140 ++++++++++++++++-------------- src/leap/common/testing/leaptestskey.pem | 55 ++++++------ 3 files changed, 132 insertions(+), 112 deletions(-) diff --git a/src/leap/common/testing/cacert.pem b/src/leap/common/testing/cacert.pem index 6989c48..30c69c6 100644 --- a/src/leap/common/testing/cacert.pem +++ b/src/leap/common/testing/cacert.pem @@ -1,23 +1,30 @@ -----BEGIN CERTIFICATE----- -MIID1TCCAr2gAwIBAgIJAOv0BS09D8byMA0GCSqGSIb3DQEBBQUAMIGAMQswCQYD -VQQGEwJVUzETMBEGA1UECAwKY3liZXJzcGFjZTEnMCUGA1UECgweTEVBUCBFbmNy -eXB0aW9uIEFjY2VzcyBQcm9qZWN0MRYwFAYDVQQDDA10ZXN0cy1sZWFwLnNlMRsw -GQYJKoZIhvcNAQkBFgxpbmZvQGxlYXAuc2UwHhcNMTIwODMxMTYyNjMwWhcNMTUw -ODMxMTYyNjMwWjCBgDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCmN5YmVyc3BhY2Ux -JzAlBgNVBAoMHkxFQVAgRW5jcnlwdGlvbiBBY2Nlc3MgUHJvamVjdDEWMBQGA1UE -AwwNdGVzdHMtbGVhcC5zZTEbMBkGCSqGSIb3DQEJARYMaW5mb0BsZWFwLnNlMIIB -IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1pU7OU+abrUXFZwp6X0LlF0f -xQvC1Nmr5sFH7N9RTu3bdwY2t57ECP2TPkH6+x7oOvCTgAMxIE1scWEEkfgKViqW -FH/Om1UW1PMaiDYGtFuqEuxM95FvaYxp2K6rzA37WNsedA28sCYzhRD+/5HqbCNT -3rRS2cPaVO8kXI/5bgd8bUk3009pWTg4SvTtOW/9MWJbBH5f5JWmMn7Ayt6hIdT/ -E6npofEK/UCqAlEscARYFXSB/F8nK1whjo9mGFjMUd7d/25UbFHqOk4K7ishD4DH -F7LaS84rS+Sjwn3YtDdDQblGghJfz8X1AfPSGivGnvLVdkmMF9Y2hJlSQ7+C5wID -AQABo1AwTjAdBgNVHQ4EFgQUnpJEv4FnlqKbfm7mprudKdrnOAowHwYDVR0jBBgw -FoAUnpJEv4FnlqKbfm7mprudKdrnOAowDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0B -AQUFAAOCAQEAGW66qwdK/ATRVZkTpI2sgi+2dWD5tY4VyZuJIrRwfXsGPeVvmdsa -zDmwW5dMkth1Of5yO6o7ijvUvfnw/UCLNLNICKZhH5G0DHstfBeFc0jnP2MqOZCp -puRGPBlO2nxUCvoGcPRUKGQK9XSYmxcmaSFyzKVDMLnmH+Lakj5vaY9a8ZAcZTz7 -T5qePxKAxg+RIlH8Ftc485QP3fhqPYPrRsL3g6peiqCvIRshoP1MSoh19boI+1uX -wHQ/NyDkL5ErKC5JCSpaeF8VG1ek570kKWQLuQAbnlXZw+Sqfu35CIdizHaYGEcx -xA8oXH4L2JaT2x9GKDSpCmB2xXy/NVamUg== +MIIFGDCCBACgAwIBAgIJAIu/QWMeEGrsMA0GCSqGSIb3DQEBBQUAMIG4MQswCQYD +VQQGEwJVUzELMAkGA1UECBMCQ0ExEzARBgNVBAcTCkN5YmVyc3BhY2UxJzAlBgNV +BAoTHkxFQVAgRW5jcnlwdGlvbiBBY2Nlc3MgUHJvamVjdDETMBEGA1UECxMKY3li +ZXJzcGFjZTEWMBQGA1UEAxMNdGVzdHMtbGVhcC5zZTETMBEGA1UEKRMKdGVzdHMt +bGVhcDEcMBoGCSqGSIb3DQEJARYNdGVzdHNAbGVhcC5zZTAeFw0xMzA5MDMxNTA0 +MTFaFw0yMzA5MDExNTA0MTFaMIG4MQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0Ex +EzARBgNVBAcTCkN5YmVyc3BhY2UxJzAlBgNVBAoTHkxFQVAgRW5jcnlwdGlvbiBB +Y2Nlc3MgUHJvamVjdDETMBEGA1UECxMKY3liZXJzcGFjZTEWMBQGA1UEAxMNdGVz +dHMtbGVhcC5zZTETMBEGA1UEKRMKdGVzdHMtbGVhcDEcMBoGCSqGSIb3DQEJARYN +dGVzdHNAbGVhcC5zZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ9R +L/azQ7jIzmB6+VEKFSdDw27DMq/aN87grNHqNAQiiU7b3hJLff9CAgMZhP92hB7X +Wwg/TN7IEMLUacP0EChRekI6VtpsNBlfb5g/8yq4kORWhniY99dnjbJaw2sGA3Oh +azySIvrKPxE/V393dmOQq+RFO4S+ytcq+rUILVFQX4lnFUHTyGGtpgMnB3smxJ8K +WPu9bZej0GXjeWgVb28HxoqMEJC+4lScRZT/p7VhWN0QmOW3SP4l65guvDStdTGY +z3uOFbGRuSRN9nHwTxe5COhyOa1TrEp89noHOGt3DRba4ZN4QUF3vX+c5JKaF6Ie +s7LajB3hSWe/8ifT9oMCAwEAAaOCASEwggEdMB0GA1UdDgQWBBQ2GXCWqVz+o4IP +eZUxUitKQb2ByzCB7QYDVR0jBIHlMIHigBQ2GXCWqVz+o4IPeZUxUitKQb2By6GB +vqSBuzCBuDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRMwEQYDVQQHEwpDeWJl +cnNwYWNlMScwJQYDVQQKEx5MRUFQIEVuY3J5cHRpb24gQWNjZXNzIFByb2plY3Qx +EzARBgNVBAsTCmN5YmVyc3BhY2UxFjAUBgNVBAMTDXRlc3RzLWxlYXAuc2UxEzAR +BgNVBCkTCnRlc3RzLWxlYXAxHDAaBgkqhkiG9w0BCQEWDXRlc3RzQGxlYXAuc2WC +CQCLv0FjHhBq7DAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQBVBey7 +ohxU/ir7g3In+uk3iyfZT+yhmjz1j6IWqbno+sc3CfCOiEgTRTphFTN2aP6pvigD +yKUBYZ0NRA5mAl3xopeT819DPkLgkacm4wugYKqV+60yrekmbEWsu/T5/jLWHN6s +QelIKdLklA9oivM1lCIqR+XV4A2MX3zwXdEmZp8QYiBAqLf49wgCLhSOrgXXUlb0 +EUMsyclHs9PN33YRd9qQiE0hwBwpcxxus/sonnMP2xDiDiCu6dnYC7BmzfYfgiS5 +7tfEGpKyuY+7J+etOzOKfkNA20ooVRvvpQ4rpcHulKwZE3yI0geW7YS2uL+p5ORO +twHvLcMPlAXUkXhS -----END CERTIFICATE----- diff --git a/src/leap/common/testing/leaptestscert.pem b/src/leap/common/testing/leaptestscert.pem index 65596b1..68342a1 100644 --- a/src/leap/common/testing/leaptestscert.pem +++ b/src/leap/common/testing/leaptestscert.pem @@ -1,84 +1,96 @@ Certificate: Data: Version: 3 (0x2) - Serial Number: - eb:f4:05:2d:3d:0f:c6:f3 + Serial Number: 2 (0x2) Signature Algorithm: sha1WithRSAEncryption - Issuer: C=US, ST=cyberspace, O=LEAP Encryption Access Project, CN=tests-leap.se/emailAddress=info@leap.se + Issuer: C=US, ST=CA, L=Cyberspace, O=LEAP Encryption Access Project, OU=cyberspace, CN=tests-leap.se/name=tests-leap/emailAddress=tests@leap.se Validity - Not Before: Aug 31 16:30:17 2012 GMT - Not After : Aug 31 16:30:17 2013 GMT - Subject: C=US, ST=cyberspace, L=net, O=LEAP Encryption Access Project, CN=localhost/emailAddress=info@leap.se + Not Before: Sep 3 15:05:04 2013 GMT + Not After : Sep 1 15:05:04 2023 GMT + Subject: C=US, ST=CA, L=Cyberspace, O=LEAP Encryption Access Project, OU=cyberspace, CN=leaptestskey/name=tests-leap/emailAddress=tests@leap.se Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: - 00:bc:f1:c4:05:ce:4b:d5:9b:9a:fa:c1:a5:0c:89: - 15:7e:05:69:b6:a4:62:38:3a:d6:14:4a:36:aa:3c: - 31:70:54:2e:bf:7d:05:19:ad:7b:0c:a9:a6:7d:46: - be:83:62:cb:ea:b9:48:6c:7d:78:a0:10:0b:ad:8a: - 74:7a:b8:ff:32:85:64:36:90:dc:38:dd:90:6e:07: - 82:70:ae:5f:4e:1f:f4:46:98:f3:98:b4:fa:08:65: - bf:d6:ec:a9:ba:7e:a8:f0:40:a2:d0:1a:cb:e6:fc: - 95:c5:54:63:92:5b:b8:0a:36:cc:26:d3:2b:ad:16: - ff:49:53:f4:65:7c:64:27:9a:f5:12:75:11:a5:0c: - 5a:ea:1e:e4:31:f3:a6:2b:db:0e:4a:5d:aa:47:3a: - f0:5e:2a:d5:6f:74:b6:f8:bc:9a:73:d0:fa:8a:be: - a8:69:47:9b:07:45:d9:b5:cd:1c:9b:c5:41:9a:65: - cc:99:a0:bd:bf:b5:e8:9f:66:5f:69:c9:6d:c8:68: - 50:68:74:ae:8e:12:7e:9c:24:4f:dc:05:61:b7:8a: - 6d:2a:95:43:d9:3f:fe:d8:c9:a7:ae:63:cd:30:d5: - 95:84:18:2d:12:b5:2d:a6:fe:37:dd:74:b8:f8:a5: - 59:18:8f:ca:f7:ae:63:0d:9d:66:51:7d:9c:40:48: - 9b:a1 + 00:c4:4c:e5:c8:a5:47:4f:02:93:ee:6b:b4:2e:4e: + d8:5f:35:17:43:e2:12:73:fc:53:5c:92:b1:ac:08: + c1:98:56:7c:f4:f4:44:15:a8:e9:e1:a6:2d:ca:a5: + e0:1d:89:e4:a4:27:69:de:7d:06:ca:25:1b:95:3d: + 2d:13:36:ce:a2:58:9b:1b:dc:cd:46:b6:d5:f5:c3: + 31:86:9c:22:07:c4:81:f4:89:a2:e0:5c:05:fe:e8: + bb:7f:80:20:ba:2d:c6:fd:4c:af:3c:b9:ab:c1:56: + 20:c3:1c:6a:3d:dc:6f:f4:4d:5c:cf:5f:7b:0c:3e: + 62:14:ef:a2:6b:6c:02:c3:4d:ea:eb:3c:03:51:ad: + 17:27:27:db:03:7f:8e:6e:eb:ef:0b:39:80:e9:02: + 48:53:d6:02:cb:10:e7:88:0a:8c:7a:fa:50:02:13: + 2d:da:c6:9f:65:f6:09:01:3b:f7:48:59:58:f2:ad: + 8f:7c:d2:b3:dd:2e:fd:ff:fe:62:99:83:75:4c:86: + 01:41:82:01:48:51:37:0d:06:c0:b2:d9:a4:2d:6a: + ee:de:2f:49:a5:07:6d:e6:11:23:b1:bd:0c:ff:5f: + 98:fb:63:1c:7b:a0:24:b1:33:53:de:33:c5:73:4d: + ce:0f:a9:18:0d:f5:9a:29:46:ee:9a:c2:22:3d:01: + db:63 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:FALSE Netscape Comment: - OpenSSL Generated Certificate + Easy-RSA Generated Certificate X509v3 Subject Key Identifier: - B2:50:B4:C6:38:8F:BA:C4:3B:69:4C:6B:45:7C:CF:08:48:36:02:E0 + 65:B4:E8:FD:61:E2:B1:C6:87:2F:E2:CA:FB:9C:73:43:D0:BC:6D:24 X509v3 Authority Key Identifier: - keyid:9E:92:44:BF:81:67:96:A2:9B:7E:6E:E6:A6:BB:9D:29:DA:E7:38:0A + keyid:36:19:70:96:A9:5C:FE:A3:82:0F:79:95:31:52:2B:4A:41:BD:81:CB + DirName:/C=US/ST=CA/L=Cyberspace/O=LEAP Encryption Access Project/OU=cyberspace/CN=tests-leap.se/name=tests-leap/emailAddress=tests@leap.se + serial:8B:BF:41:63:1E:10:6A:EC + X509v3 Extended Key Usage: + TLS Web Client Authentication + X509v3 Key Usage: + Digital Signature Signature Algorithm: sha1WithRSAEncryption - aa:ab:d4:27:e3:cb:42:05:55:fd:24:b3:e5:55:7d:fb:ce:6c: - ff:c7:96:f0:7d:30:a1:53:4a:04:eb:a4:24:5e:96:ee:65:ef: - e5:aa:08:47:9d:aa:95:2a:bb:6a:28:9f:51:62:63:d9:7d:1a: - 81:a0:72:f7:9f:33:6b:3b:f4:dc:85:cd:2a:ee:83:a9:93:3d: - 75:53:91:fa:0b:1b:10:83:11:2c:03:4e:ac:bf:c3:e6:25:74: - 9f:14:13:4a:43:66:c2:d7:1c:6c:94:3e:a6:f3:a5:bd:01:2c: - 9f:20:29:2e:62:82:12:d8:8b:70:1b:88:2b:18:68:5a:45:80: - 46:2a:6a:d5:df:1f:d3:e8:57:39:0a:be:1a:d8:b0:3e:e5:b6: - c3:69:b7:5e:c0:7b:b3:a8:a6:78:ee:0a:3d:a0:74:40:fb:42: - 9f:f4:98:7f:47:cc:15:28:eb:b1:95:77:82:a8:65:9b:46:c3: - 4f:f9:f4:72:be:bd:24:28:5c:0d:b3:89:e4:13:71:c8:a7:54: - 1b:26:15:f3:c1:b2:a9:13:77:54:c2:b9:b0:c7:24:39:00:4c: - 1a:a7:9b:e7:ad:4a:3a:32:c2:81:0d:13:2d:27:ea:98:00:a9: - 0e:9e:38:3b:8f:80:34:17:17:3d:49:7e:f4:a5:19:05:28:08: - 7d:de:d3:1f + 6c:3e:59:41:53:20:86:8c:c1:2a:e9:6a:17:1c:ed:96:e9:76: + 8d:3f:68:8c:cd:17:a6:ac:ab:c5:07:dc:93:40:ed:77:1a:72: + a2:45:06:49:0e:1c:18:55:9b:9f:d7:6f:b5:4a:40:69:06:f0: + b3:d6:e2:30:de:db:73:a5:12:9a:43:a8:a7:fb:6e:f4:22:a9: + 10:e6:08:2d:d1:86:95:22:e7:53:5a:38:c5:d9:2d:f5:6e:62: + 71:1b:49:13:dd:e8:ac:c1:06:be:4a:f5:77:81:45:37:18:1c: + fb:77:61:a8:0b:f9:f5:7e:f4:30:86:f0:32:34:93:70:f9:e7: + ba:b2:af:45:c0:05:46:64:41:fd:93:ab:f0:39:2d:17:bb:15: + 19:ff:9c:8b:0f:65:db:b1:aa:7c:cd:9d:5d:c4:da:12:57:33: + f9:c9:60:ca:09:23:d0:60:d3:f0:5b:fa:d7:ba:e7:1b:c6:df: + d6:cf:a1:06:1a:1e:e5:2e:00:ea:b5:aa:ab:b2:56:61:c1:bb: + 0e:7e:c2:ff:c7:a9:43:a8:71:de:7e:1c:cb:3b:a6:21:2b:7f: + 34:f5:ff:0b:0d:79:04:0a:8c:88:12:7b:c0:02:a0:f3:8f:0e: + 9f:0e:3d:71:24:7b:ed:59:a7:5e:94:6d:9c:5f:73:95:cd:59: + 4a:88:34:f7 -----BEGIN CERTIFICATE----- -MIIECjCCAvKgAwIBAgIJAOv0BS09D8bzMA0GCSqGSIb3DQEBBQUAMIGAMQswCQYD -VQQGEwJVUzETMBEGA1UECAwKY3liZXJzcGFjZTEnMCUGA1UECgweTEVBUCBFbmNy -eXB0aW9uIEFjY2VzcyBQcm9qZWN0MRYwFAYDVQQDDA10ZXN0cy1sZWFwLnNlMRsw -GQYJKoZIhvcNAQkBFgxpbmZvQGxlYXAuc2UwHhcNMTIwODMxMTYzMDE3WhcNMTMw -ODMxMTYzMDE3WjCBijELMAkGA1UEBhMCVVMxEzARBgNVBAgMCmN5YmVyc3BhY2Ux -DDAKBgNVBAcMA25ldDEnMCUGA1UECgweTEVBUCBFbmNyeXB0aW9uIEFjY2VzcyBQ -cm9qZWN0MRIwEAYDVQQDDAlsb2NhbGhvc3QxGzAZBgkqhkiG9w0BCQEWDGluZm9A -bGVhcC5zZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALzxxAXOS9Wb -mvrBpQyJFX4FabakYjg61hRKNqo8MXBULr99BRmtewyppn1GvoNiy+q5SGx9eKAQ -C62KdHq4/zKFZDaQ3DjdkG4HgnCuX04f9EaY85i0+ghlv9bsqbp+qPBAotAay+b8 -lcVUY5JbuAo2zCbTK60W/0lT9GV8ZCea9RJ1EaUMWuoe5DHzpivbDkpdqkc68F4q -1W90tvi8mnPQ+oq+qGlHmwdF2bXNHJvFQZplzJmgvb+16J9mX2nJbchoUGh0ro4S -fpwkT9wFYbeKbSqVQ9k//tjJp65jzTDVlYQYLRK1Lab+N910uPilWRiPyveuYw2d -ZlF9nEBIm6ECAwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3Bl -blNTTCBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFLJQtMY4j7rEO2lM -a0V8zwhINgLgMB8GA1UdIwQYMBaAFJ6SRL+BZ5aim35u5qa7nSna5zgKMA0GCSqG -SIb3DQEBBQUAA4IBAQCqq9Qn48tCBVX9JLPlVX37zmz/x5bwfTChU0oE66QkXpbu -Ze/lqghHnaqVKrtqKJ9RYmPZfRqBoHL3nzNrO/Tchc0q7oOpkz11U5H6CxsQgxEs -A06sv8PmJXSfFBNKQ2bC1xxslD6m86W9ASyfICkuYoIS2ItwG4grGGhaRYBGKmrV -3x/T6Fc5Cr4a2LA+5bbDabdewHuzqKZ47go9oHRA+0Kf9Jh/R8wVKOuxlXeCqGWb -RsNP+fRyvr0kKFwNs4nkE3HIp1QbJhXzwbKpE3dUwrmwxyQ5AEwap5vnrUo6MsKB -DRMtJ+qYAKkOnjg7j4A0Fxc9SX70pRkFKAh93tMf +MIIFXTCCBEWgAwIBAgIBAjANBgkqhkiG9w0BAQUFADCBuDELMAkGA1UEBhMCVVMx +CzAJBgNVBAgTAkNBMRMwEQYDVQQHEwpDeWJlcnNwYWNlMScwJQYDVQQKEx5MRUFQ +IEVuY3J5cHRpb24gQWNjZXNzIFByb2plY3QxEzARBgNVBAsTCmN5YmVyc3BhY2Ux +FjAUBgNVBAMTDXRlc3RzLWxlYXAuc2UxEzARBgNVBCkTCnRlc3RzLWxlYXAxHDAa +BgkqhkiG9w0BCQEWDXRlc3RzQGxlYXAuc2UwHhcNMTMwOTAzMTUwNTA0WhcNMjMw +OTAxMTUwNTA0WjCBtzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRMwEQYDVQQH +EwpDeWJlcnNwYWNlMScwJQYDVQQKEx5MRUFQIEVuY3J5cHRpb24gQWNjZXNzIFBy +b2plY3QxEzARBgNVBAsTCmN5YmVyc3BhY2UxFTATBgNVBAMTDGxlYXB0ZXN0c2tl +eTETMBEGA1UEKRMKdGVzdHMtbGVhcDEcMBoGCSqGSIb3DQEJARYNdGVzdHNAbGVh +cC5zZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRM5cilR08Ck+5r +tC5O2F81F0PiEnP8U1ySsawIwZhWfPT0RBWo6eGmLcql4B2J5KQnad59BsolG5U9 +LRM2zqJYmxvczUa21fXDMYacIgfEgfSJouBcBf7ou3+AILotxv1Mrzy5q8FWIMMc +aj3cb/RNXM9feww+YhTvomtsAsNN6us8A1GtFycn2wN/jm7r7ws5gOkCSFPWAssQ +54gKjHr6UAITLdrGn2X2CQE790hZWPKtj3zSs90u/f/+YpmDdUyGAUGCAUhRNw0G +wLLZpC1q7t4vSaUHbeYRI7G9DP9fmPtjHHugJLEzU94zxXNNzg+pGA31milG7prC +Ij0B22MCAwEAAaOCAW8wggFrMAkGA1UdEwQCMAAwLQYJYIZIAYb4QgENBCAWHkVh +c3ktUlNBIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUZbTo/WHiscaH +L+LK+5xzQ9C8bSQwge0GA1UdIwSB5TCB4oAUNhlwlqlc/qOCD3mVMVIrSkG9gcuh +gb6kgbswgbgxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTETMBEGA1UEBxMKQ3li +ZXJzcGFjZTEnMCUGA1UEChMeTEVBUCBFbmNyeXB0aW9uIEFjY2VzcyBQcm9qZWN0 +MRMwEQYDVQQLEwpjeWJlcnNwYWNlMRYwFAYDVQQDEw10ZXN0cy1sZWFwLnNlMRMw +EQYDVQQpEwp0ZXN0cy1sZWFwMRwwGgYJKoZIhvcNAQkBFg10ZXN0c0BsZWFwLnNl +ggkAi79BYx4QauwwEwYDVR0lBAwwCgYIKwYBBQUHAwIwCwYDVR0PBAQDAgeAMA0G +CSqGSIb3DQEBBQUAA4IBAQBsPllBUyCGjMEq6WoXHO2W6XaNP2iMzRemrKvFB9yT +QO13GnKiRQZJDhwYVZuf12+1SkBpBvCz1uIw3ttzpRKaQ6in+270IqkQ5ggt0YaV +IudTWjjF2S31bmJxG0kT3eiswQa+SvV3gUU3GBz7d2GoC/n1fvQwhvAyNJNw+ee6 +sq9FwAVGZEH9k6vwOS0XuxUZ/5yLD2Xbsap8zZ1dxNoSVzP5yWDKCSPQYNPwW/rX +uucbxt/Wz6EGGh7lLgDqtaqrslZhwbsOfsL/x6lDqHHefhzLO6YhK3809f8LDXkE +CoyIEnvAAqDzjw6fDj1xJHvtWadelG2cX3OVzVlKiDT3 -----END CERTIFICATE----- diff --git a/src/leap/common/testing/leaptestskey.pem b/src/leap/common/testing/leaptestskey.pem index fe6291a..93d67c2 100644 --- a/src/leap/common/testing/leaptestskey.pem +++ b/src/leap/common/testing/leaptestskey.pem @@ -1,27 +1,28 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEpQIBAAKCAQEAvPHEBc5L1Zua+sGlDIkVfgVptqRiODrWFEo2qjwxcFQuv30F -Ga17DKmmfUa+g2LL6rlIbH14oBALrYp0erj/MoVkNpDcON2QbgeCcK5fTh/0Rpjz -mLT6CGW/1uypun6o8ECi0BrL5vyVxVRjklu4CjbMJtMrrRb/SVP0ZXxkJ5r1EnUR -pQxa6h7kMfOmK9sOSl2qRzrwXirVb3S2+Lyac9D6ir6oaUebB0XZtc0cm8VBmmXM -maC9v7Xon2ZfacltyGhQaHSujhJ+nCRP3AVht4ptKpVD2T/+2MmnrmPNMNWVhBgt -ErUtpv433XS4+KVZGI/K965jDZ1mUX2cQEiboQIDAQABAoIBAQCh/+yhSbrtoCgm -PegEsnix/3QfPBxWt+Obq/HozglZlWQrnMbFuF+bgM4V9ZUdU5UhYNF+66mEG53X -orGyE3IDYCmHO3cGbroKDPhDIs7mTjGEYlniIbGLh6oPXgU8uKKis9ik84TGPOUx -NuTUtT07zLYHx+FX3DLwLUKLzTaWWSRgA7nxNwCY8aPqDxCkXEyZHvSlm9KYZnhe -nVevycoHR+chxL6X/ebbBt2FKR7tl4328mlDXvMXr0vahPH94CuXEvfTj+f6ZxZF -OctdikyRfd8O3ebrUw0XjafPYyTsDMH0/rQovEBVlecEHqh6Z9dBFlogRq5DSun9 -jem4bBXRAoGBAPGPi4g21pTQPqTFxpqea8TsPqIfo3csfMDPdzT246MxzALHqCfG -yZi4g2JYJrReSWHulZDORO5skSKNEb5VTA/3xFhKLt8CULZOakKBDLkzRXlnDFXg -Jsu9vtjDWjQcJsdsRx1tc5V6s+hmel70aaUu/maUlEYZnyIXaTe+1SB1AoGBAMg9 -EMEO5YN52pOI5qPH8j7uyVKtZWKRiR6jb5KA5TxWqZalSdPV6YwDqV/e+HjWrZNw -kSEFONY0seKpIHwXchx91aym7rDHUgOoBQfCWufRMYvRXLhfOTBu4X+U52++i8wt -FvKgh6eSmc7VayAaDfHp7yfrIfS03IiN0T35mGj9AoGAPCoXg7a83VW8tId5/trE -VsjMlM6yhSU0cUV7GFsBuYzWlj6qODX/0iTqvFzeTwBI4LZu1CE78/Jgd62RJMnT -5wo8Ag1//RVziuSe/K9tvtbxT9qFrQHmR8qbtRt65Q257uOeFstDBZEJLDIR+oJ/ -qZ+5x0zsXUVWaERSdYr3RF0CgYEApKDgN3oB5Ti4Jnh1984aMver+heptYKmU9RX -lQH4dsVhpQO8UTgcTgtso+/0JZWLHB9+ksFyW1rzrcETfjLglOA4XzzYHeuiWHM5 -v4lhqBpsO+Ij80oHAPUI3RYVud/VnEauCUlGftWfM1hwPPJu6KhHAnDleAWDE5pV -oDinwBkCgYEAnn/OceaqA2fNYp1IRegbFzpewjUlHLq3bXiCIVhO7W/HqsdfUxjE -VVdjEno/pAG7ZCO5j8u+rLkG2ZIVY3qsUENUiXz52Q08qEltgM8nfirK7vIQkfd9 -YISRE3QHYJd+ArY4v+7rNeF1O5eIEyzPAbvG5raeZFcZ6POxy66uWKo= ------END RSA PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDETOXIpUdPApPu +a7QuTthfNRdD4hJz/FNckrGsCMGYVnz09EQVqOnhpi3KpeAdieSkJ2nefQbKJRuV +PS0TNs6iWJsb3M1GttX1wzGGnCIHxIH0iaLgXAX+6Lt/gCC6Lcb9TK88uavBViDD +HGo93G/0TVzPX3sMPmIU76JrbALDTerrPANRrRcnJ9sDf45u6+8LOYDpAkhT1gLL +EOeICox6+lACEy3axp9l9gkBO/dIWVjyrY980rPdLv3//mKZg3VMhgFBggFIUTcN +BsCy2aQtau7eL0mlB23mESOxvQz/X5j7Yxx7oCSxM1PeM8VzTc4PqRgN9ZopRu6a +wiI9AdtjAgMBAAECggEBAJXr+Q8+E/EnEd5lCc7YTu6f+K3Syq8kxnIMY3/1jA4R ++AuJRzqXsFCzf4OnHjzRJPuuUnAnYvkeUCux9mwXTse1DnnAMFNSrqStuHSLaH4w +OeSO/gOGpNmj3BervtMSxUiNucSSNbhKVGlPmWC3rBWUxE5pKOwX9QbyYkTS0GVi +ErwCfI62SO1Bi3heuQio3jn0SLsvrwMAuOtJMdYLQgEFEEe/LPBfmUzQKDj8900j +AOxZ87zKUVBBcKnTeGKrvk0RXf9VsHYA1Gc1ksPkF+GIiWIfBU9n3SIYKfuso9hA ++k2wW8n2h48BVOHPiT4A5s1gzs1gj+JQ+jG6QNsh1ekCgYEA/zcmbBdjbdTqKQPF +WX5YNJzwfTikz4y9e7qE7htPkJChKshmkHOHAVOQbzV3g+2u5bMeqJFEdW3SpiD2 +kc+ycm/bVP94wyyW1mxxbqhw3KSPiIv9iRErpqJp81vKGQFJhvejPs6uL782ONlB +RPInCwywiZb+26QLTuEXIagViJ0CgYEAxOdh5weJXYaKTtfRPFVe3VLIETg99Gn9 +y0m3iifl3poz0qLT4t3g3x9AqcCxf+ZSrGl/lqnafdJ450mp591WkC3CkV9EfF6h +XsU+pNKmoEbpok0uE+mOuClABwFyqVXniPtAMs+qmHXyBIjv413VoqPXfWV6+Fdk +QwJ7YKBds/8CgYA42whsPCmiZjRkPrrQXR05W10YCG5u7mOoFL1Ybi0jf5Tn+w0e +UR5aZUtf+wFNGr5D3cuOsg4WOwkaiW1kvmh6pgCuxtsYX+6ahj4e8Ndz0BVJziYF +SxX2YWhJFsHHIEpJDxIHA/Q6HtbtgzjPK0MXaxRJEqJkO/9o6yxECzYA4QKBgQC9 +u2+dHKgClNfE7TTS/Dgy78eUwCsCzvcc4eWXnKZlfxUcjIW7f61lkknOyLzAz4Eu +XWHyHa1JvHt/8n1jzOXSfCWVysTFSrIYDdw1Gj4xBuOt3szdpxo83pKxrXV9Mieu +2Nudmnl5+3y/Xew5nHt1Aodsb1K05hDYeRXFoAFqpQKBgQCjkX45rYMtmtdZo+7l +HuFkeyvr6TwxVIqbxCGOyO4gVARdu8+kFj5sPaYCLfn6J8yuywhT04ayv9VZ9MCN +jry90+tbku3tpji6/figXfQmEGiDNbvZ/YkwoVeBJ2onRBlx2v3aQjsYs/pU8Sk7 +ya0eyftVNS19sSxnVG3ZxCAudg== +-----END PRIVATE KEY----- -- cgit v1.2.3 From ff414ca180bfbc7658d2c8b579f8eb2f600c3c5f Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Tue, 3 Sep 2013 19:56:32 +0200 Subject: fix testing certs with proper server use for localhost --- src/leap/common/testing/leaptestscert.pem | 135 +++++++++++++++--------------- src/leap/common/testing/leaptestskey.pem | 52 ++++++------ 2 files changed, 95 insertions(+), 92 deletions(-) diff --git a/src/leap/common/testing/leaptestscert.pem b/src/leap/common/testing/leaptestscert.pem index 68342a1..7cb9265 100644 --- a/src/leap/common/testing/leaptestscert.pem +++ b/src/leap/common/testing/leaptestscert.pem @@ -1,96 +1,99 @@ Certificate: Data: Version: 3 (0x2) - Serial Number: 2 (0x2) + Serial Number: 4 (0x4) Signature Algorithm: sha1WithRSAEncryption Issuer: C=US, ST=CA, L=Cyberspace, O=LEAP Encryption Access Project, OU=cyberspace, CN=tests-leap.se/name=tests-leap/emailAddress=tests@leap.se Validity - Not Before: Sep 3 15:05:04 2013 GMT - Not After : Sep 1 15:05:04 2023 GMT - Subject: C=US, ST=CA, L=Cyberspace, O=LEAP Encryption Access Project, OU=cyberspace, CN=leaptestskey/name=tests-leap/emailAddress=tests@leap.se + Not Before: Sep 3 17:52:16 2013 GMT + Not After : Sep 1 17:52:16 2023 GMT + Subject: C=US, ST=CA, L=Cyberspace, O=LEAP Encryption Access Project, OU=cyberspace, CN=localhost/name=tests-leap/emailAddress=tests@leap.se Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: - 00:c4:4c:e5:c8:a5:47:4f:02:93:ee:6b:b4:2e:4e: - d8:5f:35:17:43:e2:12:73:fc:53:5c:92:b1:ac:08: - c1:98:56:7c:f4:f4:44:15:a8:e9:e1:a6:2d:ca:a5: - e0:1d:89:e4:a4:27:69:de:7d:06:ca:25:1b:95:3d: - 2d:13:36:ce:a2:58:9b:1b:dc:cd:46:b6:d5:f5:c3: - 31:86:9c:22:07:c4:81:f4:89:a2:e0:5c:05:fe:e8: - bb:7f:80:20:ba:2d:c6:fd:4c:af:3c:b9:ab:c1:56: - 20:c3:1c:6a:3d:dc:6f:f4:4d:5c:cf:5f:7b:0c:3e: - 62:14:ef:a2:6b:6c:02:c3:4d:ea:eb:3c:03:51:ad: - 17:27:27:db:03:7f:8e:6e:eb:ef:0b:39:80:e9:02: - 48:53:d6:02:cb:10:e7:88:0a:8c:7a:fa:50:02:13: - 2d:da:c6:9f:65:f6:09:01:3b:f7:48:59:58:f2:ad: - 8f:7c:d2:b3:dd:2e:fd:ff:fe:62:99:83:75:4c:86: - 01:41:82:01:48:51:37:0d:06:c0:b2:d9:a4:2d:6a: - ee:de:2f:49:a5:07:6d:e6:11:23:b1:bd:0c:ff:5f: - 98:fb:63:1c:7b:a0:24:b1:33:53:de:33:c5:73:4d: - ce:0f:a9:18:0d:f5:9a:29:46:ee:9a:c2:22:3d:01: - db:63 + 00:c0:4f:ae:dc:f3:2e:0e:45:ae:a8:fe:0a:2b:de: + 00:28:b8:92:3a:5b:a4:7b:62:53:f3:ce:1e:2e:69: + b6:b8:62:1a:a0:00:46:73:71:9e:d2:e7:cf:42:a8: + e3:7c:12:8f:06:da:d4:2f:87:e6:52:68:d9:8f:89: + d1:43:8c:5c:5f:a5:bd:6c:04:c6:fd:36:ee:f6:d2: + cd:15:f1:43:31:cc:20:e1:ee:8c:9e:3d:91:9d:28: + ff:85:d3:8f:8c:90:1d:1e:1d:64:8e:6c:1a:f3:b2: + 3b:23:29:5b:03:ff:97:d4:78:b6:dd:d5:27:4a:d4: + 2d:9c:2b:3b:28:45:0f:86:54:4c:8c:25:e8:88:48: + 59:55:d3:97:f1:74:06:52:c9:b3:dc:c0:7f:b7:6a: + 25:57:fb:b7:0c:f5:e9:3c:6e:e7:c8:7a:aa:c0:7d: + 95:5d:bc:ef:f6:16:eb:fa:59:f4:76:30:47:b7:d9: + 73:bf:f6:08:f4:d9:74:86:59:de:ac:3d:73:27:fe: + 57:e5:2a:f3:4d:28:45:82:51:67:6a:4c:0a:c6:8b: + 40:aa:43:80:fe:43:bd:eb:b9:42:2d:84:22:6b:fb: + b2:d6:2b:ee:d0:28:6f:7c:d1:ad:51:47:b1:99:26: + fb:37:b2:48:54:0e:1d:de:b9:ad:ae:20:23:e2:a9: + 02:e5 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:FALSE + Netscape Cert Type: + SSL Server Netscape Comment: - Easy-RSA Generated Certificate + Easy-RSA Generated Server Certificate X509v3 Subject Key Identifier: - 65:B4:E8:FD:61:E2:B1:C6:87:2F:E2:CA:FB:9C:73:43:D0:BC:6D:24 + 51:92:B6:A3:D7:D6:EC:8F:FC:16:C5:D4:0F:87:CC:EA:5C:7C:17:81 X509v3 Authority Key Identifier: keyid:36:19:70:96:A9:5C:FE:A3:82:0F:79:95:31:52:2B:4A:41:BD:81:CB DirName:/C=US/ST=CA/L=Cyberspace/O=LEAP Encryption Access Project/OU=cyberspace/CN=tests-leap.se/name=tests-leap/emailAddress=tests@leap.se serial:8B:BF:41:63:1E:10:6A:EC X509v3 Extended Key Usage: - TLS Web Client Authentication + TLS Web Server Authentication X509v3 Key Usage: - Digital Signature + Digital Signature, Key Encipherment Signature Algorithm: sha1WithRSAEncryption - 6c:3e:59:41:53:20:86:8c:c1:2a:e9:6a:17:1c:ed:96:e9:76: - 8d:3f:68:8c:cd:17:a6:ac:ab:c5:07:dc:93:40:ed:77:1a:72: - a2:45:06:49:0e:1c:18:55:9b:9f:d7:6f:b5:4a:40:69:06:f0: - b3:d6:e2:30:de:db:73:a5:12:9a:43:a8:a7:fb:6e:f4:22:a9: - 10:e6:08:2d:d1:86:95:22:e7:53:5a:38:c5:d9:2d:f5:6e:62: - 71:1b:49:13:dd:e8:ac:c1:06:be:4a:f5:77:81:45:37:18:1c: - fb:77:61:a8:0b:f9:f5:7e:f4:30:86:f0:32:34:93:70:f9:e7: - ba:b2:af:45:c0:05:46:64:41:fd:93:ab:f0:39:2d:17:bb:15: - 19:ff:9c:8b:0f:65:db:b1:aa:7c:cd:9d:5d:c4:da:12:57:33: - f9:c9:60:ca:09:23:d0:60:d3:f0:5b:fa:d7:ba:e7:1b:c6:df: - d6:cf:a1:06:1a:1e:e5:2e:00:ea:b5:aa:ab:b2:56:61:c1:bb: - 0e:7e:c2:ff:c7:a9:43:a8:71:de:7e:1c:cb:3b:a6:21:2b:7f: - 34:f5:ff:0b:0d:79:04:0a:8c:88:12:7b:c0:02:a0:f3:8f:0e: - 9f:0e:3d:71:24:7b:ed:59:a7:5e:94:6d:9c:5f:73:95:cd:59: - 4a:88:34:f7 + 88:d9:35:e0:d9:fa:fd:6b:57:e2:4d:f6:ef:91:6f:56:a6:2b: + 1a:1e:ec:8f:b0:18:e3:ec:ca:c9:1e:78:07:1d:0f:cf:fe:09: + 21:84:25:c4:27:ea:22:d7:48:53:73:ed:78:0f:42:5c:c7:f7: + 38:04:84:df:67:99:fd:75:6f:e8:dc:3b:91:ab:fa:c7:32:e5: + fd:3b:ce:de:7c:6a:df:39:46:1e:46:3a:4d:e1:e1:60:f3:bf: + aa:b2:0b:5d:ee:f2:0c:ee:82:7f:b5:02:75:04:47:d5:2b:c8: + e0:6d:6a:10:4a:ca:e0:c3:4f:ee:ff:15:71:37:f5:4d:95:38: + fe:a3:da:84:46:90:04:c2:61:86:a0:7f:e2:7d:62:46:6d:f6: + f8:90:51:88:c3:f2:8c:ca:b3:89:40:9f:6b:8b:33:65:e1:fd: + 0f:8b:d7:6a:93:dc:de:be:85:07:c7:d1:1d:b5:db:70:54:9f: + 95:d8:fb:11:f7:a7:e6:90:ba:9b:28:0e:3d:47:7a:63:6d:60: + 44:f6:96:aa:b6:a2:bc:0a:e5:25:c8:a2:74:91:54:95:bb:e2: + 09:01:56:73:6e:56:e8:6f:d6:a5:d8:18:96:c1:82:ef:2c:9e: + e2:4c:94:bc:00:71:5e:16:49:6b:e4:94:7a:d1:0c:2e:f4:19: + b2:2a:c2:b8 -----BEGIN CERTIFICATE----- -MIIFXTCCBEWgAwIBAgIBAjANBgkqhkiG9w0BAQUFADCBuDELMAkGA1UEBhMCVVMx +MIIFdDCCBFygAwIBAgIBBDANBgkqhkiG9w0BAQUFADCBuDELMAkGA1UEBhMCVVMx CzAJBgNVBAgTAkNBMRMwEQYDVQQHEwpDeWJlcnNwYWNlMScwJQYDVQQKEx5MRUFQ IEVuY3J5cHRpb24gQWNjZXNzIFByb2plY3QxEzARBgNVBAsTCmN5YmVyc3BhY2Ux FjAUBgNVBAMTDXRlc3RzLWxlYXAuc2UxEzARBgNVBCkTCnRlc3RzLWxlYXAxHDAa -BgkqhkiG9w0BCQEWDXRlc3RzQGxlYXAuc2UwHhcNMTMwOTAzMTUwNTA0WhcNMjMw -OTAxMTUwNTA0WjCBtzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRMwEQYDVQQH +BgkqhkiG9w0BCQEWDXRlc3RzQGxlYXAuc2UwHhcNMTMwOTAzMTc1MjE2WhcNMjMw +OTAxMTc1MjE2WjCBtDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRMwEQYDVQQH EwpDeWJlcnNwYWNlMScwJQYDVQQKEx5MRUFQIEVuY3J5cHRpb24gQWNjZXNzIFBy -b2plY3QxEzARBgNVBAsTCmN5YmVyc3BhY2UxFTATBgNVBAMTDGxlYXB0ZXN0c2tl -eTETMBEGA1UEKRMKdGVzdHMtbGVhcDEcMBoGCSqGSIb3DQEJARYNdGVzdHNAbGVh -cC5zZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRM5cilR08Ck+5r -tC5O2F81F0PiEnP8U1ySsawIwZhWfPT0RBWo6eGmLcql4B2J5KQnad59BsolG5U9 -LRM2zqJYmxvczUa21fXDMYacIgfEgfSJouBcBf7ou3+AILotxv1Mrzy5q8FWIMMc -aj3cb/RNXM9feww+YhTvomtsAsNN6us8A1GtFycn2wN/jm7r7ws5gOkCSFPWAssQ -54gKjHr6UAITLdrGn2X2CQE790hZWPKtj3zSs90u/f/+YpmDdUyGAUGCAUhRNw0G -wLLZpC1q7t4vSaUHbeYRI7G9DP9fmPtjHHugJLEzU94zxXNNzg+pGA31milG7prC -Ij0B22MCAwEAAaOCAW8wggFrMAkGA1UdEwQCMAAwLQYJYIZIAYb4QgENBCAWHkVh -c3ktUlNBIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUZbTo/WHiscaH -L+LK+5xzQ9C8bSQwge0GA1UdIwSB5TCB4oAUNhlwlqlc/qOCD3mVMVIrSkG9gcuh -gb6kgbswgbgxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTETMBEGA1UEBxMKQ3li -ZXJzcGFjZTEnMCUGA1UEChMeTEVBUCBFbmNyeXB0aW9uIEFjY2VzcyBQcm9qZWN0 -MRMwEQYDVQQLEwpjeWJlcnNwYWNlMRYwFAYDVQQDEw10ZXN0cy1sZWFwLnNlMRMw -EQYDVQQpEwp0ZXN0cy1sZWFwMRwwGgYJKoZIhvcNAQkBFg10ZXN0c0BsZWFwLnNl -ggkAi79BYx4QauwwEwYDVR0lBAwwCgYIKwYBBQUHAwIwCwYDVR0PBAQDAgeAMA0G -CSqGSIb3DQEBBQUAA4IBAQBsPllBUyCGjMEq6WoXHO2W6XaNP2iMzRemrKvFB9yT -QO13GnKiRQZJDhwYVZuf12+1SkBpBvCz1uIw3ttzpRKaQ6in+270IqkQ5ggt0YaV -IudTWjjF2S31bmJxG0kT3eiswQa+SvV3gUU3GBz7d2GoC/n1fvQwhvAyNJNw+ee6 -sq9FwAVGZEH9k6vwOS0XuxUZ/5yLD2Xbsap8zZ1dxNoSVzP5yWDKCSPQYNPwW/rX -uucbxt/Wz6EGGh7lLgDqtaqrslZhwbsOfsL/x6lDqHHefhzLO6YhK3809f8LDXkE -CoyIEnvAAqDzjw6fDj1xJHvtWadelG2cX3OVzVlKiDT3 +b2plY3QxEzARBgNVBAsTCmN5YmVyc3BhY2UxEjAQBgNVBAMTCWxvY2FsaG9zdDET +MBEGA1UEKRMKdGVzdHMtbGVhcDEcMBoGCSqGSIb3DQEJARYNdGVzdHNAbGVhcC5z +ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMBPrtzzLg5Frqj+Cive +ACi4kjpbpHtiU/POHi5ptrhiGqAARnNxntLnz0Ko43wSjwba1C+H5lJo2Y+J0UOM +XF+lvWwExv027vbSzRXxQzHMIOHujJ49kZ0o/4XTj4yQHR4dZI5sGvOyOyMpWwP/ +l9R4tt3VJ0rULZwrOyhFD4ZUTIwl6IhIWVXTl/F0BlLJs9zAf7dqJVf7twz16Txu +58h6qsB9lV287/YW6/pZ9HYwR7fZc7/2CPTZdIZZ3qw9cyf+V+Uq800oRYJRZ2pM +CsaLQKpDgP5Dveu5Qi2EImv7stYr7tAob3zRrVFHsZkm+zeySFQOHd65ra4gI+Kp +AuUCAwEAAaOCAYkwggGFMAkGA1UdEwQCMAAwEQYJYIZIAYb4QgEBBAQDAgZAMDQG +CWCGSAGG+EIBDQQnFiVFYXN5LVJTQSBHZW5lcmF0ZWQgU2VydmVyIENlcnRpZmlj +YXRlMB0GA1UdDgQWBBRRkraj19bsj/wWxdQPh8zqXHwXgTCB7QYDVR0jBIHlMIHi +gBQ2GXCWqVz+o4IPeZUxUitKQb2By6GBvqSBuzCBuDELMAkGA1UEBhMCVVMxCzAJ +BgNVBAgTAkNBMRMwEQYDVQQHEwpDeWJlcnNwYWNlMScwJQYDVQQKEx5MRUFQIEVu +Y3J5cHRpb24gQWNjZXNzIFByb2plY3QxEzARBgNVBAsTCmN5YmVyc3BhY2UxFjAU +BgNVBAMTDXRlc3RzLWxlYXAuc2UxEzARBgNVBCkTCnRlc3RzLWxlYXAxHDAaBgkq +hkiG9w0BCQEWDXRlc3RzQGxlYXAuc2WCCQCLv0FjHhBq7DATBgNVHSUEDDAKBggr +BgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQEFBQADggEBAIjZNeDZ+v1r +V+JN9u+Rb1amKxoe7I+wGOPsyskeeAcdD8/+CSGEJcQn6iLXSFNz7XgPQlzH9zgE +hN9nmf11b+jcO5Gr+scy5f07zt58at85Rh5GOk3h4WDzv6qyC13u8gzugn+1AnUE +R9UryOBtahBKyuDDT+7/FXE39U2VOP6j2oRGkATCYYagf+J9YkZt9viQUYjD8ozK +s4lAn2uLM2Xh/Q+L12qT3N6+hQfH0R2123BUn5XY+xH3p+aQupsoDj1HemNtYET2 +lqq2orwK5SXIonSRVJW74gkBVnNuVuhv1qXYGJbBgu8snuJMlLwAcV4WSWvklHrR +DC70GbIqwrg= -----END CERTIFICATE----- diff --git a/src/leap/common/testing/leaptestskey.pem b/src/leap/common/testing/leaptestskey.pem index 93d67c2..3a3f3fc 100644 --- a/src/leap/common/testing/leaptestskey.pem +++ b/src/leap/common/testing/leaptestskey.pem @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDETOXIpUdPApPu -a7QuTthfNRdD4hJz/FNckrGsCMGYVnz09EQVqOnhpi3KpeAdieSkJ2nefQbKJRuV -PS0TNs6iWJsb3M1GttX1wzGGnCIHxIH0iaLgXAX+6Lt/gCC6Lcb9TK88uavBViDD -HGo93G/0TVzPX3sMPmIU76JrbALDTerrPANRrRcnJ9sDf45u6+8LOYDpAkhT1gLL -EOeICox6+lACEy3axp9l9gkBO/dIWVjyrY980rPdLv3//mKZg3VMhgFBggFIUTcN -BsCy2aQtau7eL0mlB23mESOxvQz/X5j7Yxx7oCSxM1PeM8VzTc4PqRgN9ZopRu6a -wiI9AdtjAgMBAAECggEBAJXr+Q8+E/EnEd5lCc7YTu6f+K3Syq8kxnIMY3/1jA4R -+AuJRzqXsFCzf4OnHjzRJPuuUnAnYvkeUCux9mwXTse1DnnAMFNSrqStuHSLaH4w -OeSO/gOGpNmj3BervtMSxUiNucSSNbhKVGlPmWC3rBWUxE5pKOwX9QbyYkTS0GVi -ErwCfI62SO1Bi3heuQio3jn0SLsvrwMAuOtJMdYLQgEFEEe/LPBfmUzQKDj8900j -AOxZ87zKUVBBcKnTeGKrvk0RXf9VsHYA1Gc1ksPkF+GIiWIfBU9n3SIYKfuso9hA -+k2wW8n2h48BVOHPiT4A5s1gzs1gj+JQ+jG6QNsh1ekCgYEA/zcmbBdjbdTqKQPF -WX5YNJzwfTikz4y9e7qE7htPkJChKshmkHOHAVOQbzV3g+2u5bMeqJFEdW3SpiD2 -kc+ycm/bVP94wyyW1mxxbqhw3KSPiIv9iRErpqJp81vKGQFJhvejPs6uL782ONlB -RPInCwywiZb+26QLTuEXIagViJ0CgYEAxOdh5weJXYaKTtfRPFVe3VLIETg99Gn9 -y0m3iifl3poz0qLT4t3g3x9AqcCxf+ZSrGl/lqnafdJ450mp591WkC3CkV9EfF6h -XsU+pNKmoEbpok0uE+mOuClABwFyqVXniPtAMs+qmHXyBIjv413VoqPXfWV6+Fdk -QwJ7YKBds/8CgYA42whsPCmiZjRkPrrQXR05W10YCG5u7mOoFL1Ybi0jf5Tn+w0e -UR5aZUtf+wFNGr5D3cuOsg4WOwkaiW1kvmh6pgCuxtsYX+6ahj4e8Ndz0BVJziYF -SxX2YWhJFsHHIEpJDxIHA/Q6HtbtgzjPK0MXaxRJEqJkO/9o6yxECzYA4QKBgQC9 -u2+dHKgClNfE7TTS/Dgy78eUwCsCzvcc4eWXnKZlfxUcjIW7f61lkknOyLzAz4Eu -XWHyHa1JvHt/8n1jzOXSfCWVysTFSrIYDdw1Gj4xBuOt3szdpxo83pKxrXV9Mieu -2Nudmnl5+3y/Xew5nHt1Aodsb1K05hDYeRXFoAFqpQKBgQCjkX45rYMtmtdZo+7l -HuFkeyvr6TwxVIqbxCGOyO4gVARdu8+kFj5sPaYCLfn6J8yuywhT04ayv9VZ9MCN -jry90+tbku3tpji6/figXfQmEGiDNbvZ/YkwoVeBJ2onRBlx2v3aQjsYs/pU8Sk7 -ya0eyftVNS19sSxnVG3ZxCAudg== +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDAT67c8y4ORa6o +/gor3gAouJI6W6R7YlPzzh4uaba4YhqgAEZzcZ7S589CqON8Eo8G2tQvh+ZSaNmP +idFDjFxfpb1sBMb9Nu720s0V8UMxzCDh7oyePZGdKP+F04+MkB0eHWSObBrzsjsj +KVsD/5fUeLbd1SdK1C2cKzsoRQ+GVEyMJeiISFlV05fxdAZSybPcwH+3aiVX+7cM +9ek8bufIeqrAfZVdvO/2Fuv6WfR2MEe32XO/9gj02XSGWd6sPXMn/lflKvNNKEWC +UWdqTArGi0CqQ4D+Q73ruUIthCJr+7LWK+7QKG980a1RR7GZJvs3skhUDh3eua2u +ICPiqQLlAgMBAAECggEBAKJr6j0UagaF1dFG1eJc2neKA36kXdQTpOIaaKU8haVO +vjv6X4YrJT/tpsAfEhp9Ni1M7r7CIcXiZjVz6bkKOA5UVhqAImxEVClEuw/YN688 +P11yc3NGftBkiwNFPk0yflUr7/zV0yGVm5rD1+oVme9KkO/kkg4CDA+E9664PTdu +S4NVvL6OgHUG2nucqIz0kzUBapo7okIkvggfldeDYF47rn/e0VikNpKkMzoCzWs+ +3ryzldfigwg18rE2nltQYk/Mi+H30iNTNEonLjs9YbiDPn8iy5SZ7xY4lAO1Urev +skdY04hmkOzh9JEETHeTj1LUIw7tfRdS3X6B+19gkCECgYEA+41UOLBb0ZHsGjsA +aZBtI4g8mvGTOFe/Az7Jm0404z6e8AIe4NeSJoJ6oV6WG2BmKvqTViYT2QnmauHA +WB1xJ5fH3PK7/LjICI2QE247E294+g5p1KYysALc2fChfJNpdfETzWJAUSSBFqxb +amCDZ4Gc8S/V44fEkJKPLuAvxL0CgYEAw7YyGsEX+lDGzumFQY4wz20+Cyvilnx0 +xoFGQ85RSprZttU64PID/u1HD9/Nv4lGcBDcTTtrmOEk9x51YzttrsPF9sn+Wj0y +eahuR32Qc1652Y7fAKgN2vIZRFBcGpAsemcoqmYFRMImX60G0areKaclooimTbJA +Si52P4IKnUkCgYAI+07ah1F/9hncBedJ3aJH9oFTdvSuulNTplZEeVJiGsZKA4le +tdO+FEKUqG/rolGDj1bbaJik0zmq70yS2NpFc6HrPa+Aoohh5cwTJYhudTh4lTMq +KJT+u9tu3KynagwF7gmq96scOpVxXc4VykRm2bXk1rRoX1yhXNpH7jFGcQKBgCn/ +v2DebzbYftGIa4BV80OQPfBHyqhgrO6sb1e9vtQzxuTlfW0ogpMCeG1/qbegzeze +sWghiEWWi0g80RQqfK80dBcx4dObrmlNK91LpOQdP+TgNBr/9Xk22xU96YYJyoG6 +AZAPtLG8uF9v0jbMZECsDfeDO60Qw5snvViDn6OBAoGACAbbQCbuh0cduDVwn0uz +8XDyRTKDhOsJ3p6UB1TjwvbLeoPI93Dv1gpEeoqELtCu+ZXr3+/i/IbwrxucrFNn +L/s+4zR2mlEAxBdtCFsH/Qf7+iYpBFSo4YReXz3xR+EVTmswzodJCbtF74oQSr6o +7d56Rd/5k2UkFeXnlGOLyAc= -----END PRIVATE KEY----- -- cgit v1.2.3 From 23b96758a217f5a7b6f1ea7c99294c68b53fae65 Mon Sep 17 00:00:00 2001 From: Ivan Alejandro Date: Fri, 6 Sep 2013 14:41:01 -0300 Subject: Fold in changes. --- CHANGELOG | 4 ++++ changes/bug-fix-exception | 1 - changes/feature-3574_use-dirspec-instead-of-plain-xdg | 1 - 3 files changed, 4 insertions(+), 2 deletions(-) delete mode 100644 changes/bug-fix-exception delete mode 100644 changes/feature-3574_use-dirspec-instead-of-plain-xdg diff --git a/CHANGELOG b/CHANGELOG index 4b1fc70..d39426c 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,7 @@ +0.3.2 Sep 06: + o Use dirspec instead of plain xdg. Closes #3574. + o Correct use of CallbackAlreadyRegistered exception. + 0.3.1 Aug 23: o Add libssl-dev requirement for pyOpenSSL. o Make the server ping call be async inside events' diff --git a/changes/bug-fix-exception b/changes/bug-fix-exception deleted file mode 100644 index 866c39a..0000000 --- a/changes/bug-fix-exception +++ /dev/null @@ -1 +0,0 @@ - o Correct use of CallbackAlreadyRegistered exception diff --git a/changes/feature-3574_use-dirspec-instead-of-plain-xdg b/changes/feature-3574_use-dirspec-instead-of-plain-xdg deleted file mode 100644 index 9bdc507..0000000 --- a/changes/feature-3574_use-dirspec-instead-of-plain-xdg +++ /dev/null @@ -1 +0,0 @@ - o Use dirspec instead of plain xdg. Closes #3574. -- cgit v1.2.3