OLD | NEW |
---|---|
1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import datetime, logging, re, subprocess, os | 5 import datetime, logging, re, subprocess, os |
6 | 6 |
7 # These certificate trees are for testing only in sealed containers | 7 # These certificate trees are for testing only in sealed containers |
8 # so it is okay that we have them checked into a GIT repository. | 8 # so it is okay that we have them checked into a GIT repository. |
9 # Nobody will ever use this information on the open air. | 9 # Nobody will ever use this information on the open air. |
10 | 10 ca_cert_1 = """-----BEGIN CERTIFICATE----- |
11 cert_info = { | |
12 'cert1': { | |
13 'router': { | |
14 'ca_cert': | |
15 """-----BEGIN CERTIFICATE----- | |
16 MIIDMTCCApqgAwIBAgIJANAMhNy2leWKMA0GCSqGSIb3DQEBBQUAMG8xCzAJBgNV | 11 MIIDMTCCApqgAwIBAgIJANAMhNy2leWKMA0GCSqGSIb3DQEBBQUAMG8xCzAJBgNV |
17 BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBW | 12 BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBW |
18 aWV3MTMwMQYDVQQDEypjaHJvbWVsYWItd2lmaS10ZXN0YmVkLXJvb3QubXR2Lmdv | 13 aWV3MTMwMQYDVQQDEypjaHJvbWVsYWItd2lmaS10ZXN0YmVkLXJvb3QubXR2Lmdv |
19 b2dsZS5jb20wHhcNMTAwODExMDAyODI3WhcNMjAwODA4MDAyODI3WjBvMQswCQYD | 14 b2dsZS5jb20wHhcNMTAwODExMDAyODI3WhcNMjAwODA4MDAyODI3WjBvMQswCQYD |
20 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4g | 15 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4g |
21 VmlldzEzMDEGA1UEAxMqY2hyb21lbGFiLXdpZmktdGVzdGJlZC1yb290Lm10di5n | 16 VmlldzEzMDEGA1UEAxMqY2hyb21lbGFiLXdpZmktdGVzdGJlZC1yb290Lm10di5n |
22 b29nbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKzIZQXJjjtuQO | 17 b29nbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKzIZQXJjjtuQO |
23 hQvHUa436mSOSo7PTP4cM39Ip7dlSRqTL+lHdQN9d0dgrYQFvlHwaG5CBVYhtFtQ | 18 hQvHUa436mSOSo7PTP4cM39Ip7dlSRqTL+lHdQN9d0dgrYQFvlHwaG5CBVYhtFtQ |
24 JMy2ozauwTwtD5oHHL0DyhhgNA9H4zrTpM/t5euHpZwrOik7lnw87JBdKto/wy5X | 19 JMy2ozauwTwtD5oHHL0DyhhgNA9H4zrTpM/t5euHpZwrOik7lnw87JBdKto/wy5X |
25 bhKOwvrRSsJIVLc2j5bD0225EPff6wIDAQABo4HUMIHRMB0GA1UdDgQWBBRw5Wl2 | 20 bhKOwvrRSsJIVLc2j5bD0225EPff6wIDAQABo4HUMIHRMB0GA1UdDgQWBBRw5Wl2 |
26 YFf67mTeir0yYaF/jUS9QTCBoQYDVR0jBIGZMIGWgBRw5Wl2YFf67mTeir0yYaF/ | 21 YFf67mTeir0yYaF/jUS9QTCBoQYDVR0jBIGZMIGWgBRw5Wl2YFf67mTeir0yYaF/ |
27 jUS9QaFzpHEwbzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAU | 22 jUS9QaFzpHEwbzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAU |
28 BgNVBAcTDU1vdW50YWluIFZpZXcxMzAxBgNVBAMTKmNocm9tZWxhYi13aWZpLXRl | 23 BgNVBAcTDU1vdW50YWluIFZpZXcxMzAxBgNVBAMTKmNocm9tZWxhYi13aWZpLXRl |
29 c3RiZWQtcm9vdC5tdHYuZ29vZ2xlLmNvbYIJANAMhNy2leWKMAwGA1UdEwQFMAMB | 24 c3RiZWQtcm9vdC5tdHYuZ29vZ2xlLmNvbYIJANAMhNy2leWKMAwGA1UdEwQFMAMB |
30 Af8wDQYJKoZIhvcNAQEFBQADgYEAZAiBupvbckbb9ICASaz0a1uE4VNSqAZhhBXm | 25 Af8wDQYJKoZIhvcNAQEFBQADgYEAZAiBupvbckbb9ICASaz0a1uE4VNSqAZhhBXm |
31 AmrjmwnYU+yFkGgscyoq6wLzA+VbbfeBo088GT1LTyzUFqnsLNk7NrT1dtuCPijS | 26 AmrjmwnYU+yFkGgscyoq6wLzA+VbbfeBo088GT1LTyzUFqnsLNk7NrT1dtuCPijS |
32 p8gKkMu03kpkoKO0H9OB7HMRcdB7O87c5S1de4PLqdTwooF0f+yT6dqivUHgP5KF | 27 p8gKkMu03kpkoKO0H9OB7HMRcdB7O87c5S1de4PLqdTwooF0f+yT6dqivUHgP5KF |
33 K3F2V44= | 28 K3F2V44= |
34 -----END CERTIFICATE-----""", | 29 -----END CERTIFICATE-----""" |
35 'server_cert': | 30 server_cert_1 = """-----BEGIN CERTIFICATE----- |
36 """-----BEGIN CERTIFICATE----- | |
37 MIIDPTCCAqagAwIBAgIDEAABMA0GCSqGSIb3DQEBBAUAMG8xCzAJBgNVBAYTAlVT | 31 MIIDPTCCAqagAwIBAgIDEAABMA0GCSqGSIb3DQEBBAUAMG8xCzAJBgNVBAYTAlVT |
38 MRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTMw | 32 MRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTMw |
39 MQYDVQQDEypjaHJvbWVsYWItd2lmaS10ZXN0YmVkLXJvb3QubXR2Lmdvb2dsZS5j | 33 MQYDVQQDEypjaHJvbWVsYWItd2lmaS10ZXN0YmVkLXJvb3QubXR2Lmdvb2dsZS5j |
40 b20wHhcNMTAwODExMDAyODI3WhcNMTEwODExMDAyODI3WjBxMQswCQYDVQQGEwJV | 34 b20wHhcNMTAwODExMDAyODI3WhcNMTEwODExMDAyODI3WjBxMQswCQYDVQQGEwJV |
41 UzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzE1 | 35 UzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzE1 |
42 MDMGA1UEAxMsY2hyb21lbGFiLXdpZmktdGVzdGJlZC1zZXJ2ZXIubXR2Lmdvb2ds | 36 MDMGA1UEAxMsY2hyb21lbGFiLXdpZmktdGVzdGJlZC1zZXJ2ZXIubXR2Lmdvb2ds |
43 ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAPn4bKRL1o6E0V9346pa | 37 ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAPn4bKRL1o6E0V9346pa |
44 ZNmeVujp8L6gIxk1z5cFDcs07K7XV4ML/M2GPaYuHFGYgs5PO29Bju/oG246kI/o | 38 ZNmeVujp8L6gIxk1z5cFDcs07K7XV4ML/M2GPaYuHFGYgs5PO29Bju/oG246kI/o |
45 n7uEEcVedXWYOuQL+W3QI7c6NYsAiQmMSpLRlqX9q0QCAMXs/Hipm0oKGYA5Tsdo | 39 n7uEEcVedXWYOuQL+W3QI7c6NYsAiQmMSpLRlqX9q0QCAMXs/Hipm0oKGYA5Tsdo |
46 q9UIszkOIhZHP+YPbkJFyrATAgMBAAGjgeQwgeEwCQYDVR0TBAIwADARBglghkgB | 40 q9UIszkOIhZHP+YPbkJFyrATAgMBAAGjgeQwgeEwCQYDVR0TBAIwADARBglghkgB |
47 hvhCAQEEBAMCBkAwHQYDVR0OBBYEFDYGlkJwDwKS0M4/SYFdTlLDcvsBMIGhBgNV | 41 hvhCAQEEBAMCBkAwHQYDVR0OBBYEFDYGlkJwDwKS0M4/SYFdTlLDcvsBMIGhBgNV |
48 HSMEgZkwgZaAFHDlaXZgV/ruZN6KvTJhoX+NRL1BoXOkcTBvMQswCQYDVQQGEwJV | 42 HSMEgZkwgZaAFHDlaXZgV/ruZN6KvTJhoX+NRL1BoXOkcTBvMQswCQYDVQQGEwJV |
49 UzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEz | 43 UzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEz |
50 MDEGA1UEAxMqY2hyb21lbGFiLXdpZmktdGVzdGJlZC1yb290Lm10di5nb29nbGUu | 44 MDEGA1UEAxMqY2hyb21lbGFiLXdpZmktdGVzdGJlZC1yb290Lm10di5nb29nbGUu |
51 Y29tggkA0AyE3LaV5YowDQYJKoZIhvcNAQEEBQADgYEAQphT8fiEPvwuDpzkuClg | 45 Y29tggkA0AyE3LaV5YowDQYJKoZIhvcNAQEEBQADgYEAQphT8fiEPvwuDpzkuClg |
52 xqajzKwX677ggbYrP+k1v2WIPRBUW7lZs8OdKgwkIxvD4RBNwztEcBreWJG0I5xQ | 46 xqajzKwX677ggbYrP+k1v2WIPRBUW7lZs8OdKgwkIxvD4RBNwztEcBreWJG0I5xQ |
53 sJ9H+K12INdQ+TOrSAiEYuy4bu9EXf2On7MsAgcSTbQHN3bLuvtag3frDVvERlMU | 47 sJ9H+K12INdQ+TOrSAiEYuy4bu9EXf2On7MsAgcSTbQHN3bLuvtag3frDVvERlMU |
54 iaHwTA/p/X5zeCxKQunfwP0= | 48 iaHwTA/p/X5zeCxKQunfwP0= |
55 -----END CERTIFICATE-----""", | 49 -----END CERTIFICATE-----""" |
56 'private_key': | 50 server_private_key_1 = """-----BEGIN RSA PRIVATE KEY----- |
57 """-----BEGIN RSA PRIVATE KEY----- | |
58 MIICXAIBAAKBgQD5+GykS9aOhNFfd+OqWmTZnlbo6fC+oCMZNc+XBQ3LNOyu11eD | 51 MIICXAIBAAKBgQD5+GykS9aOhNFfd+OqWmTZnlbo6fC+oCMZNc+XBQ3LNOyu11eD |
59 C/zNhj2mLhxRmILOTztvQY7v6BtuOpCP6J+7hBHFXnV1mDrkC/lt0CO3OjWLAIkJ | 52 C/zNhj2mLhxRmILOTztvQY7v6BtuOpCP6J+7hBHFXnV1mDrkC/lt0CO3OjWLAIkJ |
60 jEqS0Zal/atEAgDF7Px4qZtKChmAOU7HaKvVCLM5DiIWRz/mD25CRcqwEwIDAQAB | 53 jEqS0Zal/atEAgDF7Px4qZtKChmAOU7HaKvVCLM5DiIWRz/mD25CRcqwEwIDAQAB |
61 AoGBAPWF55f8kXKMzGXcCTdC8Dm7x5ugZIGoIrFZZFvub9z/T9Zv1xn1hUqNpzH5 | 54 AoGBAPWF55f8kXKMzGXcCTdC8Dm7x5ugZIGoIrFZZFvub9z/T9Zv1xn1hUqNpzH5 |
62 qoEOrrRbqIIfv3iu33qGdYWUNIZ2PO/9q/IQ31Z4eV2iVQ3kpjoZnvfhyJ7t0QXG | 55 qoEOrrRbqIIfv3iu33qGdYWUNIZ2PO/9q/IQ31Z4eV2iVQ3kpjoZnvfhyJ7t0QXG |
63 xbS1F5UAcS1cdVxPjWkXYg4uoIg3/Y+HCW6n77v8UPl0+QT5AkEA/1XfTVYqs6eI | 56 xbS1F5UAcS1cdVxPjWkXYg4uoIg3/Y+HCW6n77v8UPl0+QT5AkEA/1XfTVYqs6eI |
64 I7pNip+tqwFg93WewZ4it17O1VxaSZX+rjLs6+nxzVeWyIAcbw5Tdos4onafsf8t | 57 I7pNip+tqwFg93WewZ4it17O1VxaSZX+rjLs6+nxzVeWyIAcbw5Tdos4onafsf8t |
65 ncjrqB0ebQJBAPqe+jk97pazkSKqIyXogpApZ1EbJHHJblS4HU/FAq0wZHMqvDmy | 58 ncjrqB0ebQJBAPqe+jk97pazkSKqIyXogpApZ1EbJHHJblS4HU/FAq0wZHMqvDmy |
66 8sQR+B7RZ96MnuIGsVIbKz0BveuD+wn7+H8CQHl9k32JxVGsIiPVznVqGskmI8w6 | 59 8sQR+B7RZ96MnuIGsVIbKz0BveuD+wn7+H8CQHl9k32JxVGsIiPVznVqGskmI8w6 |
67 4+n+Y0hazRFKGw+uVfru8joiG1J4HZ+TDXRuHZpnDfCHft7DqyHLaw2XpVUCQCGW | 60 4+n+Y0hazRFKGw+uVfru8joiG1J4HZ+TDXRuHZpnDfCHft7DqyHLaw2XpVUCQCGW |
68 UrR/L011DTtXD9TRv0Wwts7w00aIl0e1UQBSx9QMCzo//O/CorRSMC15JPF3aQej | 61 UrR/L011DTtXD9TRv0Wwts7w00aIl0e1UQBSx9QMCzo//O/CorRSMC15JPF3aQej |
69 m/oD+Bx58kjw7CDfauMCQGV7dPtWmA6DbparS8Z59Fx25XpN6+asw+Krrq3iGqpf | 62 m/oD+Bx58kjw7CDfauMCQGV7dPtWmA6DbparS8Z59Fx25XpN6+asw+Krrq3iGqpf |
70 /E8LtHSUdiUZztQN0oUUCEh8C//2NRDUK5M2Y7kjF+Y= | 63 /E8LtHSUdiUZztQN0oUUCEh8C//2NRDUK5M2Y7kjF+Y= |
71 -----END RSA PRIVATE KEY-----""", | 64 -----END RSA PRIVATE KEY-----""" |
72 'eap_user_file': '* TLS' | 65 client_cert_1 = """-----BEGIN CERTIFICATE----- |
73 }, | |
74 'client': { | |
75 'client_cert': | |
76 """-----BEGIN CERTIFICATE----- | |
77 MIIDKjCCApOgAwIBAgIDEAACMA0GCSqGSIb3DQEBBAUAMG8xCzAJBgNVBAYTAlVT | 66 MIIDKjCCApOgAwIBAgIDEAACMA0GCSqGSIb3DQEBBAUAMG8xCzAJBgNVBAYTAlVT |
78 MRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTMw | 67 MRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTMw |
79 MQYDVQQDEypjaHJvbWVsYWItd2lmaS10ZXN0YmVkLXJvb3QubXR2Lmdvb2dsZS5j | 68 MQYDVQQDEypjaHJvbWVsYWItd2lmaS10ZXN0YmVkLXJvb3QubXR2Lmdvb2dsZS5j |
80 b20wHhcNMTAwODExMDAyODMwWhcNMTEwODExMDAyODMwWjBxMQswCQYDVQQGEwJV | 69 b20wHhcNMTAwODExMDAyODMwWhcNMTEwODExMDAyODMwWjBxMQswCQYDVQQGEwJV |
81 UzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzE1 | 70 UzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzE1 |
82 MDMGA1UEAxMsY2hyb21lbGFiLXdpZmktdGVzdGJlZC1jbGllbnQubXR2Lmdvb2ds | 71 MDMGA1UEAxMsY2hyb21lbGFiLXdpZmktdGVzdGJlZC1jbGllbnQubXR2Lmdvb2ds |
83 ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAJu8uIlc6Ags6KS2bwqO | 72 ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAJu8uIlc6Ags6KS2bwqO |
84 flfILS//9YHJ/ch5GIC6PjA9HCUFlQSVuUb+igZ/CLZ+mTEiC76xVUD5GgZdJdHb | 73 flfILS//9YHJ/ch5GIC6PjA9HCUFlQSVuUb+igZ/CLZ+mTEiC76xVUD5GgZdJdHb |
85 lX0uTC6dI1N42pOklBNl3S3uXXyNGk1Ztg+6Lom/VKw1srlIKHIT/iMVYtzbt3+q | 74 lX0uTC6dI1N42pOklBNl3S3uXXyNGk1Ztg+6Lom/VKw1srlIKHIT/iMVYtzbt3+q |
86 hXOEjSMbMQb2hivwwV5kQSdDAgMBAAGjgdEwgc4wCQYDVR0TBAIwADAdBgNVHQ4E | 75 hXOEjSMbMQb2hivwwV5kQSdDAgMBAAGjgdEwgc4wCQYDVR0TBAIwADAdBgNVHQ4E |
87 FgQUMGYODAgMy1ohCO7Aau20Zw3lSO8wgaEGA1UdIwSBmTCBloAUcOVpdmBX+u5k | 76 FgQUMGYODAgMy1ohCO7Aau20Zw3lSO8wgaEGA1UdIwSBmTCBloAUcOVpdmBX+u5k |
88 3oq9MmGhf41EvUGhc6RxMG8xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9y | 77 3oq9MmGhf41EvUGhc6RxMG8xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9y |
89 bmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTMwMQYDVQQDEypjaHJvbWVsYWIt | 78 bmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTMwMQYDVQQDEypjaHJvbWVsYWIt |
90 d2lmaS10ZXN0YmVkLXJvb3QubXR2Lmdvb2dsZS5jb22CCQDQDITctpXlijANBgkq | 79 d2lmaS10ZXN0YmVkLXJvb3QubXR2Lmdvb2dsZS5jb22CCQDQDITctpXlijANBgkq |
91 hkiG9w0BAQQFAAOBgQAqUk+8N8NLGnLvNdRXYG2krhptGHO9h0YHjOh+xxOUcBis | 80 hkiG9w0BAQQFAAOBgQAqUk+8N8NLGnLvNdRXYG2krhptGHO9h0YHjOh+xxOUcBis |
92 DiSKG0/M5ucqGOJmF5DTDNVCLkjOcd69Zv+a/eFohlZ4K3rWo0vQs77e9rtkepB1 | 81 DiSKG0/M5ucqGOJmF5DTDNVCLkjOcd69Zv+a/eFohlZ4K3rWo0vQs77e9rtkepB1 |
93 N+6M3dMP8Z9dhfgUp3ha84mSBY6qguNFKzSUZsBQ6JF5xxhjBRHP/5t/Sz2k2A== | 82 N+6M3dMP8Z9dhfgUp3ha84mSBY6qguNFKzSUZsBQ6JF5xxhjBRHP/5t/Sz2k2A== |
94 -----END CERTIFICATE-----""", | 83 -----END CERTIFICATE-----""" |
95 'private_key': | 84 client_private_key_1 = """-----BEGIN RSA PRIVATE KEY----- |
96 """-----BEGIN RSA PRIVATE KEY----- | |
97 MIICXQIBAAKBgQCbvLiJXOgILOiktm8Kjn5XyC0v//WByf3IeRiAuj4wPRwlBZUE | 85 MIICXQIBAAKBgQCbvLiJXOgILOiktm8Kjn5XyC0v//WByf3IeRiAuj4wPRwlBZUE |
98 lblG/ooGfwi2fpkxIgu+sVVA+RoGXSXR25V9LkwunSNTeNqTpJQTZd0t7l18jRpN | 86 lblG/ooGfwi2fpkxIgu+sVVA+RoGXSXR25V9LkwunSNTeNqTpJQTZd0t7l18jRpN |
99 WbYPui6Jv1SsNbK5SChyE/4jFWLc27d/qoVzhI0jGzEG9oYr8MFeZEEnQwIDAQAB | 87 WbYPui6Jv1SsNbK5SChyE/4jFWLc27d/qoVzhI0jGzEG9oYr8MFeZEEnQwIDAQAB |
100 AoGBAJk2qinhcBkS7XGWVVoCY8PCmMofO44LhZQjpnqGP8Y/aJ/3hOp0zklNA8du | 88 AoGBAJk2qinhcBkS7XGWVVoCY8PCmMofO44LhZQjpnqGP8Y/aJ/3hOp0zklNA8du |
101 VMkNdXLD9uANID2ClBrsqtdx+vcac+mPSjxwI+tszVIzKHesYMf9XJJQrtP6gl4o | 89 VMkNdXLD9uANID2ClBrsqtdx+vcac+mPSjxwI+tszVIzKHesYMf9XJJQrtP6gl4o |
102 sA6YOQB65dhYLpckuR4vb28Dwo2W8Ha4lv/zzeCo9/LOOm5hAkEAzegQGCnAdeui | 90 sA6YOQB65dhYLpckuR4vb28Dwo2W8Ha4lv/zzeCo9/LOOm5hAkEAzegQGCnAdeui |
103 OShVZ69IcPJLMbZt641yeghWiBvclQxtvXk77Wf3jDoi16XqhGhvhkJRqcoUg+zg | 91 OShVZ69IcPJLMbZt641yeghWiBvclQxtvXk77Wf3jDoi16XqhGhvhkJRqcoUg+zg |
104 zwxFr6RqEwJBAMGgGBMPqNDtVS4pGcsr0xI8hIsDsSEBtlvfwpt1BeVJKdooQ51c | 92 zwxFr6RqEwJBAMGgGBMPqNDtVS4pGcsr0xI8hIsDsSEBtlvfwpt1BeVJKdooQ51c |
105 gDK7Q28MV/xtrvlvo2J1Slod/6sZ681U9BECQQCToBzh5hVZth4x0qwg0XgjmmO0 | 93 gDK7Q28MV/xtrvlvo2J1Slod/6sZ681U9BECQQCToBzh5hVZth4x0qwg0XgjmmO0 |
106 +bGnX1tDCPVZUnh82FNZtDD2DkNaY1gVupwAYIwM+0FndT3uNAgeChNwUXXHAkBB | 94 +bGnX1tDCPVZUnh82FNZtDD2DkNaY1gVupwAYIwM+0FndT3uNAgeChNwUXXHAkBB |
107 gkXC5TBrh3CjTnqQl8Iw0FLTqasbDLZC/UCdUgltmsRTL/44Vlx1TZAyGQ4HtKBX | 95 gkXC5TBrh3CjTnqQl8Iw0FLTqasbDLZC/UCdUgltmsRTL/44Vlx1TZAyGQ4HtKBX |
108 eiLgI+jE9pNSs1FpRg3RAkBAxoAqiYyT9W222119Qt6PdJDTNI/YxKpDfnwRZm84 | 96 eiLgI+jE9pNSs1FpRg3RAkBAxoAqiYyT9W222119Qt6PdJDTNI/YxKpDfnwRZm84 |
109 7x3V0FVuaN1GW9g4VMSsearlmgYizfRliaIrD+15Bg9Q | 97 7x3V0FVuaN1GW9g4VMSsearlmgYizfRliaIrD+15Bg9Q |
110 -----END RSA PRIVATE KEY-----""", | 98 -----END RSA PRIVATE KEY-----""" |
111 } | 99 ca_cert_2 = """-----BEGIN CERTIFICATE----- |
112 }, | |
113 | |
114 | |
115 'cert2': { | |
116 'router': { | |
117 'ca_cert': | |
118 """-----BEGIN CERTIFICATE----- | |
119 MIIDNDCCAp2gAwIBAgIJAPCOBeiGsMUzMA0GCSqGSIb3DQEBBQUAMHAxCzAJBgNV | 100 MIIDNDCCAp2gAwIBAgIJAPCOBeiGsMUzMA0GCSqGSIb3DQEBBQUAMHAxCzAJBgNV |
120 BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBW | 101 BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBW |
121 aWV3MTQwMgYDVQQDEytjaHJvbWVsYWItd2lmaS10ZXN0YmVkMi1yb290Lm10di5n | 102 aWV3MTQwMgYDVQQDEytjaHJvbWVsYWItd2lmaS10ZXN0YmVkMi1yb290Lm10di5n |
122 b29nbGUuY29tMB4XDTEwMTAxMTIxMTM1OFoXDTIwMTAwODIxMTM1OFowcDELMAkG | 103 b29nbGUuY29tMB4XDTEwMTAxMTIxMTM1OFoXDTIwMTAwODIxMTM1OFowcDELMAkG |
123 A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDU1vdW50YWlu | 104 A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDU1vdW50YWlu |
124 IFZpZXcxNDAyBgNVBAMTK2Nocm9tZWxhYi13aWZpLXRlc3RiZWQyLXJvb3QubXR2 | 105 IFZpZXcxNDAyBgNVBAMTK2Nocm9tZWxhYi13aWZpLXRlc3RiZWQyLXJvb3QubXR2 |
125 Lmdvb2dsZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALVcrIDKH5KL | 106 Lmdvb2dsZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALVcrIDKH5KL |
126 anHb9qBxI78GA/CxyevvmkUL862xVwWFWedwCFxCYLUeNW5v1GLU1Nlq/8Yp1Kit | 107 anHb9qBxI78GA/CxyevvmkUL862xVwWFWedwCFxCYLUeNW5v1GLU1Nlq/8Yp1Kit |
127 pDMqkgHwhFZheT+cU2CXBHrjCp4csaaZSgEnvDjfgFHwwjf/ghtFgaF+0YgmNm2u | 108 pDMqkgHwhFZheT+cU2CXBHrjCp4csaaZSgEnvDjfgFHwwjf/ghtFgaF+0YgmNm2u |
128 lClPs/Ar4Ed/xonR3djtPuadqqodl6h3AgMBAAGjgdUwgdIwHQYDVR0OBBYEFMTK | 109 lClPs/Ar4Ed/xonR3djtPuadqqodl6h3AgMBAAGjgdUwgdIwHQYDVR0OBBYEFMTK |
129 tCdJf+j7+/ORDIDna9dgIV/SMIGiBgNVHSMEgZowgZeAFMTKtCdJf+j7+/ORDIDn | 110 tCdJf+j7+/ORDIDna9dgIV/SMIGiBgNVHSMEgZowgZeAFMTKtCdJf+j7+/ORDIDn |
130 a9dgIV/SoXSkcjBwMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEW | 111 a9dgIV/SoXSkcjBwMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEW |
131 MBQGA1UEBxMNTW91bnRhaW4gVmlldzE0MDIGA1UEAxMrY2hyb21lbGFiLXdpZmkt | 112 MBQGA1UEBxMNTW91bnRhaW4gVmlldzE0MDIGA1UEAxMrY2hyb21lbGFiLXdpZmkt |
132 dGVzdGJlZDItcm9vdC5tdHYuZ29vZ2xlLmNvbYIJAPCOBeiGsMUzMAwGA1UdEwQF | 113 dGVzdGJlZDItcm9vdC5tdHYuZ29vZ2xlLmNvbYIJAPCOBeiGsMUzMAwGA1UdEwQF |
133 MAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAOcPgWGaHVj/UZBFOV3QutkNb/tsvHFEX | 114 MAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAOcPgWGaHVj/UZBFOV3QutkNb/tsvHFEX |
134 xVn641V1gw52jVHvM+DFhXmoRjk9JTgT0g6ALj10ehw0zOI0jxV27x30sLRE+op7 | 115 xVn641V1gw52jVHvM+DFhXmoRjk9JTgT0g6ALj10ehw0zOI0jxV27x30sLRE+op7 |
135 t++4i/fcz1VvuwhFxDRXjoY8BO+1lYUOtsapRHHASZvU1Wf+AhO2N9xtvlckFxpS | 116 t++4i/fcz1VvuwhFxDRXjoY8BO+1lYUOtsapRHHASZvU1Wf+AhO2N9xtvlckFxpS |
136 wK+1l98+x4o= | 117 wK+1l98+x4o= |
137 -----END CERTIFICATE-----""", | 118 -----END CERTIFICATE-----""" |
138 'server_cert': | 119 server_cert_2 = """-----BEGIN CERTIFICATE----- |
139 """-----BEGIN CERTIFICATE----- | |
140 MIIDQDCCAqmgAwIBAgIDEAABMA0GCSqGSIb3DQEBBAUAMHAxCzAJBgNVBAYTAlVT | 120 MIIDQDCCAqmgAwIBAgIDEAABMA0GCSqGSIb3DQEBBAUAMHAxCzAJBgNVBAYTAlVT |
141 MRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTQw | 121 MRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTQw |
142 MgYDVQQDEytjaHJvbWVsYWItd2lmaS10ZXN0YmVkMi1yb290Lm10di5nb29nbGUu | 122 MgYDVQQDEytjaHJvbWVsYWItd2lmaS10ZXN0YmVkMi1yb290Lm10di5nb29nbGUu |
143 Y29tMB4XDTEwMTAxMTIxMTM1OFoXDTExMTAxMTIxMTM1OFowcjELMAkGA1UEBhMC | 123 Y29tMB4XDTEwMTAxMTIxMTM1OFoXDTExMTAxMTIxMTM1OFowcjELMAkGA1UEBhMC |
144 VVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcx | 124 VVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcx |
145 NjA0BgNVBAMTLWNocm9tZWxhYi13aWZpLXRlc3RiZWQyLXNlcnZlci5tdHYuZ29v | 125 NjA0BgNVBAMTLWNocm9tZWxhYi13aWZpLXRlc3RiZWQyLXNlcnZlci5tdHYuZ29v |
146 Z2xlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAzP5YdymNCXBlhlD5 | 126 Z2xlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAzP5YdymNCXBlhlD5 |
147 mK5Mm9H3pG+8fLx7oIKvKea3DZ8yjGd/QK8jMo4EWccFY+jI3pjwO7gmI6ntlU5y | 127 mK5Mm9H3pG+8fLx7oIKvKea3DZ8yjGd/QK8jMo4EWccFY+jI3pjwO7gmI6ntlU5y |
148 bCL+29GPbjRtoA9zvVmD01ggGEDW+rJVKIUALPlCT/85jcwDHSzqQt9Gpj576oP5 | 128 bCL+29GPbjRtoA9zvVmD01ggGEDW+rJVKIUALPlCT/85jcwDHSzqQt9Gpj576oP5 |
149 y/nv4iEkJzmryZv46pGxtnxW6aUCAwEAAaOB5TCB4jAJBgNVHRMEAjAAMBEGCWCG | 129 y/nv4iEkJzmryZv46pGxtnxW6aUCAwEAAaOB5TCB4jAJBgNVHRMEAjAAMBEGCWCG |
150 SAGG+EIBAQQEAwIGQDAdBgNVHQ4EFgQUJlQFb95atdqXA/Wtf5zd6PWA7AgwgaIG | 130 SAGG+EIBAQQEAwIGQDAdBgNVHQ4EFgQUJlQFb95atdqXA/Wtf5zd6PWA7AgwgaIG |
151 A1UdIwSBmjCBl4AUxMq0J0l/6Pv785EMgOdr12AhX9KhdKRyMHAxCzAJBgNVBAYT | 131 A1UdIwSBmjCBl4AUxMq0J0l/6Pv785EMgOdr12AhX9KhdKRyMHAxCzAJBgNVBAYT |
152 AlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3 | 132 AlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3 |
153 MTQwMgYDVQQDEytjaHJvbWVsYWItd2lmaS10ZXN0YmVkMi1yb290Lm10di5nb29n | 133 MTQwMgYDVQQDEytjaHJvbWVsYWItd2lmaS10ZXN0YmVkMi1yb290Lm10di5nb29n |
154 bGUuY29tggkA8I4F6IawxTMwDQYJKoZIhvcNAQEEBQADgYEAUQzJuYutS5Zi9DuI | 134 bGUuY29tggkA8I4F6IawxTMwDQYJKoZIhvcNAQEEBQADgYEAUQzJuYutS5Zi9DuI |
155 CKVAyM7pR0poJkK33xwXT2Z3gMpQcNXO66omPdsoXi6aYt2Kmp3XJSAE2Ev+0EKQ | 135 CKVAyM7pR0poJkK33xwXT2Z3gMpQcNXO66omPdsoXi6aYt2Kmp3XJSAE2Ev+0EKQ |
156 Lvu56jV19Sw4MBuF94Gd0Ts3Ps8/FB8yyQQ3f2qGWAYg4S37HsK+NIz5fsgzvW5X | 136 Lvu56jV19Sw4MBuF94Gd0Ts3Ps8/FB8yyQQ3f2qGWAYg4S37HsK+NIz5fsgzvW5X |
157 tctFQRntW1evuf4y+hWaBtmpF8M= | 137 tctFQRntW1evuf4y+hWaBtmpF8M= |
158 -----END CERTIFICATE-----""", | 138 -----END CERTIFICATE-----""" |
159 'private_key': | 139 server_private_key_2 = """-----BEGIN RSA PRIVATE KEY----- |
160 """-----BEGIN RSA PRIVATE KEY----- | |
161 MIICXQIBAAKBgQDM/lh3KY0JcGWGUPmYrkyb0fekb7x8vHuggq8p5rcNnzKMZ39A | 140 MIICXQIBAAKBgQDM/lh3KY0JcGWGUPmYrkyb0fekb7x8vHuggq8p5rcNnzKMZ39A |
162 ryMyjgRZxwVj6MjemPA7uCYjqe2VTnJsIv7b0Y9uNG2gD3O9WYPTWCAYQNb6slUo | 141 ryMyjgRZxwVj6MjemPA7uCYjqe2VTnJsIv7b0Y9uNG2gD3O9WYPTWCAYQNb6slUo |
163 hQAs+UJP/zmNzAMdLOpC30amPnvqg/nL+e/iISQnOavJm/jqkbG2fFbppQIDAQAB | 142 hQAs+UJP/zmNzAMdLOpC30amPnvqg/nL+e/iISQnOavJm/jqkbG2fFbppQIDAQAB |
164 AoGAN7x0Gzo98bIQuJttsdi6VaeaOKh0zEmHJ5ZAwBjN7rM5UDmXvOOho04/2pUl | 143 AoGAN7x0Gzo98bIQuJttsdi6VaeaOKh0zEmHJ5ZAwBjN7rM5UDmXvOOho04/2pUl |
165 XwvdCcD1mJcyL4I1aeIhdEtzlZ5NOI1Y503Mrog6Fou6ui7WqB99msIZIxvbfLvG | 144 XwvdCcD1mJcyL4I1aeIhdEtzlZ5NOI1Y503Mrog6Fou6ui7WqB99msIZIxvbfLvG |
166 mDhxd7HU+29MIZZfxdrvIgYIoZKY7V/s5hioX+7NSQsMfUUCQQDvPoEm4W4TyU9F | 145 mDhxd7HU+29MIZZfxdrvIgYIoZKY7V/s5hioX+7NSQsMfUUCQQDvPoEm4W4TyU9F |
167 vMinZwIuCmk/FnHeSarZWtqxkSi5X/dQr7L8ko30lpMKjR2VljTYonHmBLPETjPU | 146 vMinZwIuCmk/FnHeSarZWtqxkSi5X/dQr7L8ko30lpMKjR2VljTYonHmBLPETjPU |
168 FaDqLe/vAkEA21m/zdbVz4gPY0JtFyOhfnchSY6H/hQITz+IKbyCG3ovvYDIV7ZH | 147 FaDqLe/vAkEA21m/zdbVz4gPY0JtFyOhfnchSY6H/hQITz+IKbyCG3ovvYDIV7ZH |
169 v7nsGhZd5J78yQJvKXfY63FpNynBos2rqwJBANZvaqljwxs/A6uZEyxgeqaztDPU | 148 v7nsGhZd5J78yQJvKXfY63FpNynBos2rqwJBANZvaqljwxs/A6uZEyxgeqaztDPU |
170 tUktNFJPSdeAKUVGS9DpOn+CCHSjBbaeV1b9Y+6MY5RswIgCJBhDLpDXjccCQD2f | 149 tUktNFJPSdeAKUVGS9DpOn+CCHSjBbaeV1b9Y+6MY5RswIgCJBhDLpDXjccCQD2f |
171 3U8LCE6hvxD33IYfsINDHMr5jCNJpXv+MVboavUlQrxOrfpWb5nhtf8uQXq1X/dp | 150 3U8LCE6hvxD33IYfsINDHMr5jCNJpXv+MVboavUlQrxOrfpWb5nhtf8uQXq1X/dp |
172 A6n2za530kN5K7l9ZrkCQQDkRew1VFDPg6baShXwEA327XH/0a/s3pSg3WNXaJ22 | 151 A6n2za530kN5K7l9ZrkCQQDkRew1VFDPg6baShXwEA327XH/0a/s3pSg3WNXaJ22 |
173 KKkkmvz0gVdObfCRIDf+Tw37tQ00n2hUUefuCnTnNFG/ | 152 KKkkmvz0gVdObfCRIDf+Tw37tQ00n2hUUefuCnTnNFG/ |
174 -----END RSA PRIVATE KEY-----""", | 153 -----END RSA PRIVATE KEY-----""" |
175 'eap_user_file': '* TLS' | 154 client_cert_2 = """-----BEGIN CERTIFICATE----- |
176 }, | |
177 'client': { | |
178 'client_cert': | |
179 """-----BEGIN CERTIFICATE----- | |
180 MIIDLTCCApagAwIBAgIDEAACMA0GCSqGSIb3DQEBBAUAMHAxCzAJBgNVBAYTAlVT | 155 MIIDLTCCApagAwIBAgIDEAACMA0GCSqGSIb3DQEBBAUAMHAxCzAJBgNVBAYTAlVT |
181 MRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTQw | 156 MRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MTQw |
182 MgYDVQQDEytjaHJvbWVsYWItd2lmaS10ZXN0YmVkMi1yb290Lm10di5nb29nbGUu | 157 MgYDVQQDEytjaHJvbWVsYWItd2lmaS10ZXN0YmVkMi1yb290Lm10di5nb29nbGUu |
183 Y29tMB4XDTEwMTAxMTIxMTQwMFoXDTExMTAxMTIxMTQwMFowcjELMAkGA1UEBhMC | 158 Y29tMB4XDTEwMTAxMTIxMTQwMFoXDTExMTAxMTIxMTQwMFowcjELMAkGA1UEBhMC |
184 VVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcx | 159 VVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcx |
185 NjA0BgNVBAMTLWNocm9tZWxhYi13aWZpLXRlc3RiZWQyLWNsaWVudC5tdHYuZ29v | 160 NjA0BgNVBAMTLWNocm9tZWxhYi13aWZpLXRlc3RiZWQyLWNsaWVudC5tdHYuZ29v |
186 Z2xlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAum3Ffn32tAAotbva | 161 Z2xlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAum3Ffn32tAAotbva |
187 R1yHQAb/eJ0agM7gkFD7ykTMxQgtvPaNJd1JOIrfzJkUJlkIO8Kw49L7J+yEwl/H | 162 R1yHQAb/eJ0agM7gkFD7ykTMxQgtvPaNJd1JOIrfzJkUJlkIO8Kw49L7J+yEwl/H |
188 e4krWBU0H5AS/KgnFs37sUNbQSOuT2GxcJy/5ce3yTvKDx+bX8YBnqVgF/J4ftZg | 163 e4krWBU0H5AS/KgnFs37sUNbQSOuT2GxcJy/5ce3yTvKDx+bX8YBnqVgF/J4ftZg |
189 k0Gw5bl8csL7ayMEPjQ67l6DmAECAwEAAaOB0jCBzzAJBgNVHRMEAjAAMB0GA1Ud | 164 k0Gw5bl8csL7ayMEPjQ67l6DmAECAwEAAaOB0jCBzzAJBgNVHRMEAjAAMB0GA1Ud |
190 DgQWBBRVbfe54dvOd9N5S+z4QQBvxuwiHzCBogYDVR0jBIGaMIGXgBTEyrQnSX/o | 165 DgQWBBRVbfe54dvOd9N5S+z4QQBvxuwiHzCBogYDVR0jBIGaMIGXgBTEyrQnSX/o |
191 +/vzkQyA52vXYCFf0qF0pHIwcDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlm | 166 +/vzkQyA52vXYCFf0qF0pHIwcDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlm |
192 b3JuaWExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxNDAyBgNVBAMTK2Nocm9tZWxh | 167 b3JuaWExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxNDAyBgNVBAMTK2Nocm9tZWxh |
193 Yi13aWZpLXRlc3RiZWQyLXJvb3QubXR2Lmdvb2dsZS5jb22CCQDwjgXohrDFMzAN | 168 Yi13aWZpLXRlc3RiZWQyLXJvb3QubXR2Lmdvb2dsZS5jb22CCQDwjgXohrDFMzAN |
194 BgkqhkiG9w0BAQQFAAOBgQAG1VF/2QAD9bLOcRm8lpJflLDVJa9mv+p1p/c3liul | 169 BgkqhkiG9w0BAQQFAAOBgQAG1VF/2QAD9bLOcRm8lpJflLDVJa9mv+p1p/c3liul |
195 4djWyL2oQt4mWXuP8DNAXnuJVvSCOJFcSDlDZ3HTLYth8WUgkMwAdXO/mWpF74OS | 170 4djWyL2oQt4mWXuP8DNAXnuJVvSCOJFcSDlDZ3HTLYth8WUgkMwAdXO/mWpF74OS |
196 8HikHuSK5oymkZB/AiQlnJlOY9nSLrEYQVLcvCfiJhhu+ziyDQlVawPIQqkBtX5y | 171 8HikHuSK5oymkZB/AiQlnJlOY9nSLrEYQVLcvCfiJhhu+ziyDQlVawPIQqkBtX5y |
197 qA== | 172 qA== |
198 -----END CERTIFICATE-----""", | 173 -----END CERTIFICATE-----""" |
199 'private_key': | 174 client_private_key_2 = """-----BEGIN RSA PRIVATE KEY----- |
200 """-----BEGIN RSA PRIVATE KEY----- | |
201 MIICXAIBAAKBgQC6bcV+ffa0ACi1u9pHXIdABv94nRqAzuCQUPvKRMzFCC289o0l | 175 MIICXAIBAAKBgQC6bcV+ffa0ACi1u9pHXIdABv94nRqAzuCQUPvKRMzFCC289o0l |
202 3Uk4it/MmRQmWQg7wrDj0vsn7ITCX8d7iStYFTQfkBL8qCcWzfuxQ1tBI65PYbFw | 176 3Uk4it/MmRQmWQg7wrDj0vsn7ITCX8d7iStYFTQfkBL8qCcWzfuxQ1tBI65PYbFw |
203 nL/lx7fJO8oPH5tfxgGepWAX8nh+1mCTQbDluXxywvtrIwQ+NDruXoOYAQIDAQAB | 177 nL/lx7fJO8oPH5tfxgGepWAX8nh+1mCTQbDluXxywvtrIwQ+NDruXoOYAQIDAQAB |
204 AoGAWzjDXnW8da9uPB7DXA/GjmneL+KPyV9xOqylx/+KQw8RclkiD9kLrwMlJzPw | 178 AoGAWzjDXnW8da9uPB7DXA/GjmneL+KPyV9xOqylx/+KQw8RclkiD9kLrwMlJzPw |
205 TCNciAFoFNJz2sE85O+A6M3hys2dlXn/JR5I1IcVjkhOe6zaFu7btcRphbX/YqKi | 179 TCNciAFoFNJz2sE85O+A6M3hys2dlXn/JR5I1IcVjkhOe6zaFu7btcRphbX/YqKi |
206 +5oZj1rxBTEqhBXAKwIDkdF55A2a2Huq0eHIB/NA50Vw5hECQQDqqR4Iz+dGGufU | 180 +5oZj1rxBTEqhBXAKwIDkdF55A2a2Huq0eHIB/NA50Vw5hECQQDqqR4Iz+dGGufU |
207 FywMoUgHjHW3iDjWgr+TF279k2BY5Fo03IDMIHFaNRT40hfFJFZh3t3hGe/RziJP | 181 FywMoUgHjHW3iDjWgr+TF279k2BY5Fo03IDMIHFaNRT40hfFJFZh3t3hGe/RziJP |
208 BRgnKikXAkEAy2HSHMuZuvaLAVkgKmUAdafnMkRCaCP4QlEHK98jix7KIyLApzaa | 182 BRgnKikXAkEAy2HSHMuZuvaLAVkgKmUAdafnMkRCaCP4QlEHK98jix7KIyLApzaa |
209 njuNW0jnUCI+4JTQxFlf4fn3h8Ugyn3GpwJBAIVb2TrO1LPNxKSPCrSez+2iUKAe | 183 njuNW0jnUCI+4JTQxFlf4fn3h8Ugyn3GpwJBAIVb2TrO1LPNxKSPCrSez+2iUKAe |
210 JZcbNT6l2aj4oY/DLtTN39CiO2k1s5Z455NdRE5YtyYfdGB60pqv3Xschb8CQCfM | 184 JZcbNT6l2aj4oY/DLtTN39CiO2k1s5Z455NdRE5YtyYfdGB60pqv3Xschb8CQCfM |
211 z8pUyZO91XwBDftd4pYjsmmy0+//QgDwTF/4fcMm1lXD4kGWvPFEJCh9/s4+tWFL | 185 z8pUyZO91XwBDftd4pYjsmmy0+//QgDwTF/4fcMm1lXD4kGWvPFEJCh9/s4+tWFL |
212 ngMenlXhjeAi4oTd0jcCQBqIFwSDElqUqeqkMtlw14wEJH6XIk+0IVQndBEyb+JN | 186 ngMenlXhjeAi4oTd0jcCQBqIFwSDElqUqeqkMtlw14wEJH6XIk+0IVQndBEyb+JN |
213 Nl40AoKFULXtQNMl7pT8uMj4ScYvRHOKg4RjwO7J+qs= | 187 Nl40AoKFULXtQNMl7pT8uMj4ScYvRHOKg4RjwO7J+qs= |
214 -----END RSA PRIVATE KEY-----""", | 188 -----END RSA PRIVATE KEY-----""" |
215 } | 189 |
216 } | 190 # A profile is a list of configuration settings for the authenticator |
191 # (router) and supplicant (client) that work together. Profiles are | |
192 # configured separately for the router and client, however, so they | |
193 # may be mixed and matched for testing error and failure handling. | |
194 profile_info = { | |
195 'tls1' : { | |
196 'router' : { | |
197 'ca_cert' : ca_cert_1, | |
198 'server_cert' : server_cert_1, | |
199 'private_key' : server_private_key_1, | |
200 'eap_user_file' : '* TLS' | |
201 }, | |
Sam Leffler
2011/01/06 04:26:08
I suspect our style guide says you've got this ind
| |
202 'client' : { | |
203 'client_cert' : client_cert_1, | |
204 'private_key' : client_private_key_1 | |
205 } | |
206 }, | |
207 'tls2' : { | |
208 'router' : { | |
209 'ca_cert' : ca_cert_2, | |
210 'server_cert' : server_cert_2, | |
211 'private_key' : server_private_key_2, | |
212 'eap_user_file' : '* TLS' | |
213 }, | |
214 'client' : { | |
215 'client_cert' : client_cert_2, | |
216 'private_key' : client_private_key_2 | |
217 } | |
218 }, | |
217 } | 219 } |
218 | 220 |
219 def insert_conf_file(host, filename, contents): | 221 def insert_conf_file(host, filename, contents): |
220 """ | 222 """ |
221 If config files are too big, the "host.run()" never returns. | 223 If config files are too big, the "host.run()" never returns. |
222 As a workaround, break the file up into lines and append the | 224 As a workaround, break the file up into lines and append the |
223 file piece by piece | 225 file piece by piece |
224 """ | 226 """ |
225 host.run('rm -f %s >/dev/null 2>&1' % filename, ignore_status=True) | 227 host.run('rm -f %s >/dev/null 2>&1' % filename, ignore_status=True) |
226 content_lines = contents.splitlines() | 228 content_lines = contents.splitlines() |
227 while content_lines: | 229 while content_lines: |
228 buflist = [] | 230 buflist = [] |
229 buflen = 0 | 231 buflen = 0 |
230 while content_lines and buflen + len(content_lines[0]) < 200: | 232 while content_lines and buflen + len(content_lines[0]) < 200: |
231 line = content_lines.pop(0) | 233 line = content_lines.pop(0) |
232 buflen += len(line) + 1 | 234 buflen += len(line) + 1 |
233 buflist.append(line) | 235 buflist.append(line) |
234 | 236 |
235 if not buflist: | 237 if not buflist: |
236 raise error.TestFail('Cert profile: line too long: %s' % | 238 raise error.TestFail('EAP profile: line too long: %s' % |
237 content_lines[0]) | 239 content_lines[0]) |
238 host.run('cat <<EOF >>%s\n%s\nEOF\n' % | 240 host.run('cat <<EOF >>%s\n%s\nEOF\n' % |
239 (filename, '\n'.join(buflist))) | 241 (filename, '\n'.join(buflist))) |
240 | 242 |
241 def router_config(router, cert): | 243 def router_config(router, profile): |
242 """ | 244 """ |
243 Configure a router, and return the added config parameters | 245 Configure a router, and return the added config parameters |
244 """ | 246 """ |
245 conf = {} | 247 conf = {} |
246 # Make sure time-of-day is correct on router | 248 # Make sure time-of-day is correct on router |
247 router.run('date -us %s' % | 249 router.run('date -us %s' % |
248 datetime.datetime.utcnow().strftime('%Y%m%d%H%M.%S')) | 250 datetime.datetime.utcnow().strftime('%Y%m%d%H%M.%S')) |
249 | 251 |
250 if cert not in cert_info: | 252 if profile not in profile_info: |
251 raise error.TestFail('Cert profile %s not in the configuration' % cert) | 253 raise error.TestFail('EAP profile %s not in the configuration' % cert) |
Sam Leffler
2011/01/06 04:26:08
s/cert/profile/
| |
252 | 254 |
253 for k, v in cert_info[cert]['router'].iteritems(): | 255 for k, v in profile_info[profile]['router'].iteritems(): |
254 filename = "/tmp/hostap_%s" % k | 256 filename = "/tmp/hostap_%s" % k |
255 insert_conf_file(router, filename, v) | 257 insert_conf_file(router, filename, v) |
256 conf[k] = filename | 258 conf[k] = filename |
257 | 259 |
258 conf['eap_server'] = '1' | 260 conf['eap_server'] = '1' |
259 return conf | 261 return conf |
260 | 262 |
261 def client_config(client, cert, ca_auth=None): | 263 |
264 def client_config(client, profile, ca_auth=None): | |
262 """ | 265 """ |
263 Configure a client, and return the added config parameters | 266 Configure a client, and return the added config parameters |
264 """ | 267 """ |
265 if cert not in cert_info: | 268 if profile not in profile_info: |
266 raise error.TestFail("Cert profile %s not in the configuration" % cert) | 269 raise error.TestFail("EAP profile %s not in the configuration" % cert) |
Sam Leffler
2011/01/06 04:26:08
s/cert/profile/
| |
267 | 270 |
268 client_pkg = '/tmp/pkg-client.pem' | 271 info = profile_info[profile]['client'] |
269 info = cert_info[cert]['client'] | 272 # args: identity, certpath, authoritypath, passphrase |
270 insert_conf_file(client, client_pkg, | 273 args = [] |
271 '\n'.join([info['client_cert'], info['private_key']])) | 274 if 'identity' in info: |
272 args = ['chromeos', client_pkg] | 275 args.append(info['identity']) |
276 else: | |
277 args.append('chromeos') | |
278 | |
279 if 'client_cert' in info and 'private_key' in info: | |
280 client_pkg = '/tmp/pkg-client.pem' | |
281 insert_conf_file(client, client_pkg, | |
282 '\n'.join([info['client_cert'], info['private_key']])) | |
283 args.append(client_pkg) | |
284 else: | |
285 args.append('') | |
286 | |
273 if ca_auth: | 287 if ca_auth: |
274 ca_cert = '/tmp/ca-cert.pem' | 288 ca_cert = '/tmp/ca-cert.pem' |
275 cert_src = cert_info[ca_auth]['router']['ca_cert'] | 289 cert_src = profile_info[ca_auth]['router']['ca_cert'] |
276 insert_conf_file(client, ca_cert, cert_src) | 290 insert_conf_file(client, ca_cert, cert_src) |
277 args.append(ca_cert) | 291 args.append(ca_cert) |
292 else: | |
293 args.append('') | |
294 | |
295 if 'password' in info: | |
296 args.append(info['password']) | |
Paul Stewart
2011/01/05 22:28:29
Wouldn't it make more sense to send the password i
| |
297 | |
278 return { 'psk': ':'.join(args) } | 298 return { 'psk': ':'.join(args) } |
OLD | NEW |