Adding more ONC validation tests.
- A typical configuration from real world. - A configuration generated from CPanel. BUG=162804 TBR=stevenjb@chromium.org Review URL: https://chromiumcodereview.appspot.com/11488008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173460 0039d316-1c4b-4281-b951-d872f2087c98
This commit is contained in:
@ -127,7 +127,14 @@ TEST_P(ONCValidatorValidTest, LiberalValidationValid) {
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
ONCValidatorValidTest,
|
||||
ONCValidatorValidTest,
|
||||
::testing::Values(OncParams("managed_toplevel.onc",
|
||||
::testing::Values(OncParams("managed_toplevel1.onc",
|
||||
&kToplevelConfigurationSignature,
|
||||
true),
|
||||
OncParams("managed_toplevel2.onc",
|
||||
&kToplevelConfigurationSignature,
|
||||
true),
|
||||
// Test a configuration generated by CPanel.
|
||||
OncParams("managed_toplevel_cpanel.onc",
|
||||
&kToplevelConfigurationSignature,
|
||||
true),
|
||||
OncParams("encrypted.onc",
|
||||
@ -276,6 +283,16 @@ INSTANTIATE_TEST_CASE_P(
|
||||
false),
|
||||
RepairParams("network-repaired", "network-repaired"))));
|
||||
|
||||
// Strict and liberal validator both repair, but with different results.
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
StrictAndLiberalRepairDifferently,
|
||||
ONCValidatorTestRepairable,
|
||||
::testing::Values(
|
||||
std::make_pair(OncParams("toplevel-with-nested-warning",
|
||||
&kToplevelConfigurationSignature,
|
||||
false),
|
||||
RepairParams("toplevel-empty", "toplevel-repaired"))));
|
||||
|
||||
// Strict and liberal validator return both INVALID.
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
StrictAndLiberalInvalid,
|
||||
|
@ -135,6 +135,10 @@
|
||||
"Authentication": "None"
|
||||
}
|
||||
},
|
||||
"toplevel-empty": {
|
||||
"Type": "UnencryptedConfiguration",
|
||||
"NetworkConfigurations": [ ]
|
||||
},
|
||||
"toplevel-repaired": {
|
||||
"Type": "UnencryptedConfiguration",
|
||||
"NetworkConfigurations":
|
||||
@ -147,6 +151,19 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
"toplevel-with-nested-warning": {
|
||||
"Type": "UnencryptedConfiguration",
|
||||
"NetworkConfigurations":
|
||||
[ { "GUID": "guid",
|
||||
"Type": "Ethernet",
|
||||
"unknown-field": "abc",
|
||||
"Name": "eth0",
|
||||
"Ethernet": {
|
||||
"Authentication": "None"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"toplevel-invalid-network": {
|
||||
"Type": "UnencryptedConfiguration",
|
||||
"NetworkConfigurations":
|
||||
|
0
chromeos/test/data/network/managed_toplevel.onc → chromeos/test/data/network/managed_toplevel1.onc
0
chromeos/test/data/network/managed_toplevel.onc → chromeos/test/data/network/managed_toplevel1.onc
90
chromeos/test/data/network/managed_toplevel2.onc
Normal file
90
chromeos/test/data/network/managed_toplevel2.onc
Normal file
@ -0,0 +1,90 @@
|
||||
{
|
||||
"NetworkConfigurations": [
|
||||
{
|
||||
"GUID": "{77db0089-0bc8-4358-929c-123xcv}",
|
||||
"Type": "WiFi",
|
||||
"Name": "SomeWifi-XY",
|
||||
"WiFi": {
|
||||
"SSID": "SomeWifi-XY",
|
||||
"Security": "WPA-EAP",
|
||||
"Recommended": [ "AutoConnect" ],
|
||||
"EAP": {
|
||||
"Outer": "EAP-TLS",
|
||||
"Identity": "${LOGIN_ID}@my.domain.com",
|
||||
"UseSystemCAs": true,
|
||||
"ClientCertType": "Pattern",
|
||||
"ClientCertPattern": {
|
||||
"IssuerCARef": [
|
||||
"{58ac1967-a0e7-49e9-be68-123abc}",
|
||||
"{42cb13cd-140c-4941-9fb6-456def}"
|
||||
],
|
||||
"EnrollmentURI": [ "chrome-extension://delkjfjibodjclmdijflfnimdmgdagfk/generate-cert.html" ]
|
||||
},
|
||||
"Recommended": [ "Identity" ],
|
||||
"SaveCredentials": true
|
||||
}
|
||||
},
|
||||
"ProxySettings": {
|
||||
"Type": "PAC",
|
||||
"PAC": "https://proxycfg.my.domain.com/proxy.dat"
|
||||
}
|
||||
},
|
||||
{
|
||||
"GUID": "{a3860e83-f03d-4cb1-bafa-789oij}",
|
||||
"Type": "VPN",
|
||||
"Name": "SomeVPN-XZ",
|
||||
"VPN": {
|
||||
"Host": "vpn.my.domain.com",
|
||||
"Type": "OpenVPN",
|
||||
"OpenVPN": {
|
||||
"AuthRetry": "interact",
|
||||
"CompLZO": "true",
|
||||
"KeyDirection": "1",
|
||||
"Port": 543,
|
||||
"Proto": "udp",
|
||||
"PushPeerInfo": true,
|
||||
"Recommended" : [ "Username", "Password" ],
|
||||
"RemoteCertEKU": "TLS Web Server Authentication",
|
||||
"RemoteCertKU": [
|
||||
"e0"
|
||||
],
|
||||
"RemoteCertTLS": "server",
|
||||
"RenegSec": 0,
|
||||
"ServerPollTimeout": 13,
|
||||
"StaticChallenge": "Please enter token",
|
||||
"TLSAuthContents": "-----BEGIN OpenVPN Static key V1-----\n83f8e7ccd99be189b4663e18615f9166\nd885cdea6c8accb0ebf5be304f0b8081\n5404f2a6574e029815d7a2fb65b83d0c\n676850714c6a56b23415a78e06aad6b1\n34900dd512049598382039e4816cb5ff\n1848532b71af47578c9b4a14b5bca49f\n99e0ae4dae2f4e5eadfea374aeb8fb1e\na6fdf02adc73ea778dfd43d64bf7bc75\n7779d629498f8c2fbfd32812bfdf6df7\n8cebafafef3e5496cb13202274f2768a\n1959bc53d67a70945c4c8c6f34b63327\nfb60dc84990ffec1243461e0b6310f61\ne90aee1f11fb6292d6f5fcd7cd508aab\n50d80f9963589c148cb4b933ec86128d\ned77d3fad6005b62f36369e2319f52bd\n09c6d2e52cce2362a05009dc29b6b39a\n-----END OpenVPN Static key V1-----\n",
|
||||
"TLSRemote": "my.domain.com",
|
||||
"SaveCredentials": false,
|
||||
"ServerCARef": "{14ff4d51-64c1-4c86-a622-054dxyz}",
|
||||
"Username": "${LOGIN_ID}",
|
||||
"ClientCertType": "Pattern",
|
||||
"ClientCertPattern": {
|
||||
"IssuerCARef": [
|
||||
"{58ac1967-a0e7-49e9-be68-eb44b8827bcc}",
|
||||
"{42cb13cd-140c-4941-9fb6-0824ea2fde17}"
|
||||
],
|
||||
"EnrollmentURI": [ "chrome-extension://deicdjjibodjclmdijflfnimdmgdagfk/keygen-cert.html" ]
|
||||
}
|
||||
}
|
||||
},
|
||||
"ProxySettings": {
|
||||
"Type": "PAC",
|
||||
"PAC": "http://proxycfg.my.domain/proxy.dat"
|
||||
}
|
||||
}
|
||||
],
|
||||
"Certificates": [
|
||||
{
|
||||
"Trust": [],
|
||||
"GUID": "{58ac1967-a0e7-49e9-be68-123abc}",
|
||||
"Type": "Authority",
|
||||
"X509": "MIIDojCCAwugAwIBAgIJAKGvi5ZgEWDVMA0GCSqGSIb3DQEBBAUAMIGTMRUwEwYDVQQKEwxHb29nbGUsIEluYy4xETAPBgNVBAsTCENocm9tZU9TMSIwIAYJKoZIhvcNAQkBFhNnc3BlbmNlckBnb29nbGUuY29tMRowGAYDVQQHExFNb3VudGFpbiBWaWV3LCBDQTELMAkGA1UECBMCQ0ExCzAJBgNVBAYTAlVTMQ0wCwYDVQQDEwRsbWFvMB4XDTExMDMxNjIzNDcxMFoXDTEyMDMxNTIzNDcxMFowgZMxFTATBgNVBAoTDEdvb2dsZSwgSW5jLjERMA8GA1UECxMIQ2hyb21lT1MxIjAgBgkqhkiG9w0BCQEWE2dzcGVuY2VyQGdvb2dsZS5jb20xGjAYBgNVBAcTEU1vdW50YWluIFZpZXcsIENBMQswCQYDVQQIEwJDQTELMAkGA1UEBhMCVVMxDTALBgNVBAMTBGxtYW8wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMDX6BQz2JUzIAVjetiXxDznd2wdqVqVHfNkbSRW+xBywgqUaIXmFEGUol7VzPfmeFV8o8ok/eFlQB0h6ycqgwwMd0KjtJs2ys/k0F5GuN0G7fsgr+NRnhVgxj21yF6gYTN/8a9kscla/svdmp8ekexbALFnghbLBx3CgcqUxT+tAgMBAAGjgfswgfgwDAYDVR0TBAUwAwEB/zAdBgNVHQ4EFgQUbYygbSkl4kpjCNuxoezFGupA97UwgcgGA1UdIwSBwDCBvYAUbYygbSkl4kpjCNuxoezFGupA97WhgZmkgZYwgZMxFTATBgNVBAoTDEdvb2dsZSwgSW5jLjERMA8GA1UECxMIQ2hyb21lT1MxIjAgBgkqhkiG9w0BCQEWE2dzcGVuY2VyQGdvb2dsZS5jb20xGjAYBgNVBAcTEU1vdW50YWluIFZpZXcsIENBMQswCQYDVQQIEwJDQTELMAkGA1UEBhMCVVMxDTALBgNVBAMTBGxtYW+CCQChr4uWYBFg1TANBgkqhkiG9w0BAQQFAAOBgQCDq9wiQ4uVuf1CQU3sXfXCy1yqi5m8AsO9FxHvah5/SVFNwKllqTfedpCaWEswJ55YAojW9e+pY2Fh3Fo/Y9YkF88KCtLuBjjqDKCRLxF4LycjHODKyQQ7mN/t5AtP9yKOsNvWF+M4IfReg51kohau6FauQx87by5NIRPdkNPvkQ=="
|
||||
},
|
||||
{
|
||||
"Trust": [],
|
||||
"GUID": "{42cb13cd-140c-4941-9fb6-456def}",
|
||||
"Type": "Authority",
|
||||
"X509": "MIICijCCAfOgAwIBAgIJAPYTFSuNYH3DMA0GCSqGSIb3DQEBBQUAMF0xCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxFjAUBgNVBAMMDW15LmRvbWFpbi5jb20wIBcNMTIxMTI5MTIxOTMwWhgPMjExMjExMDUxMjE5MzBaMF0xCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxFjAUBgNVBAMMDW15LmRvbWFpbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMGU4ZFREFcUB5M6CNmgR6m2HHI6qL8dLBFH3jVe+FIUWyrF3UtBQrhPtD7tC+3qsoRHDquHo3oVedOG2B22hQ3TUTvkO2YmL0pv9RsaRRbhYD8YqqpmWPq94nZNF13y007LwJLuwLU/8kikrNgmnT7meWVSAcLYLsbgjYaZmn2XAgMBAAGjUDBOMB0GA1UdDgQWBBTX5f2mCM32pbNdXrsKmRHeZlcxOjAfBgNVHSMEGDAWgBTX5f2mCM32pbNdXrsKmRHeZlcxOjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBAGUj0fZr2UzZjacnGhHf9x9FeQt8VALyASCw4JQyxbhB8YHjKS+IF80X8OkDiJrjkM6IOBTtyG0n0ozEgTL9m5NqWuAB2+SPkRpDgabI6mIUR/l1tkQarKCdKzYQ3+oggkiHiHXl2uC4sutgsyt54KQaQxx04+9z2WRt9yI6I1NW"
|
||||
}
|
||||
]
|
||||
}
|
40
chromeos/test/data/network/managed_toplevel_cpanel.onc
Normal file
40
chromeos/test/data/network/managed_toplevel_cpanel.onc
Normal file
@ -0,0 +1,40 @@
|
||||
{
|
||||
"Certificates": [ {
|
||||
"GUID": "{126ea985-9ece-4250-8a32-123abc}",
|
||||
"Type": "Authority",
|
||||
"X509": "-----BEGIN CERTIFICATE-----\nMIIDojCCAwugAwIBAgIJAKGvi5ZgEWDVMA0GCSqGSIb3DQEBBAUAMIGTMRUwEwYDVQQKEwxHb29nbGUsIEluYy4xETAPBgNVBAsTCENocm9tZU9TMSIwIAYJKoZIhvcNAQkBFhNnc3BlbmNlckBnb29nbGUuY29tMRowGAYDVQQHExFNb3VudGFpbiBWaWV3LCBDQTELMAkGA1UECBMCQ0ExCzAJBgNVBAYTAlVTMQ0wCwYDVQQDEwRsbWFvMB4XDTExMDMxNjIzNDcxMFoXDTEyMDMxNTIzNDcxMFowgZMxFTATBgNVBAoTDEdvb2dsZSwgSW5jLjERMA8GA1UECxMIQ2hyb21lT1MxIjAgBgkqhkiG9w0BCQEWE2dzcGVuY2VyQGdvb2dsZS5jb20xGjAYBgNVBAcTEU1vdW50YWluIFZpZXcsIENBMQswCQYDVQQIEwJDQTELMAkGA1UEBhMCVVMxDTALBgNVBAMTBGxtYW8wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMDX6BQz2JUzIAVjetiXxDznd2wdqVqVHfNkbSRW+xBywgqUaIXmFEGUol7VzPfmeFV8o8ok/eFlQB0h6ycqgwwMd0KjtJs2ys/k0F5GuN0G7fsgr+NRnhVgxj21yF6gYTN/8a9kscla/svdmp8ekexbALFnghbLBx3CgcqUxT+tAgMBAAGjgfswgfgwDAYDVR0TBAUwAwEB/zAdBgNVHQ4EFgQUbYygbSkl4kpjCNuxoezFGupA97UwgcgGA1UdIwSBwDCBvYAUbYygbSkl4kpjCNuxoezFGupA97WhgZmkgZYwgZMxFTATBgNVBAoTDEdvb2dsZSwgSW5jLjERMA8GA1UECxMIQ2hyb21lT1MxIjAgBgkqhkiG9w0BCQEWE2dzcGVuY2VyQGdvb2dsZS5jb20xGjAYBgNVBAcTEU1vdW50YWluIFZpZXcsIENBMQswCQYDVQQIEwJDQTELMAkGA1UEBhMCVVMxDTALBgNVBAMTBGxtYW+CCQChr4uWYBFg1TANBgkqhkiG9w0BAQQFAAOBgQCDq9wiQ4uVuf1CQU3sXfXCy1yqi5m8AsO9FxHvah5/SVFNwKllqTfedpCaWEswJ55YAojW9e+pY2Fh3Fo/Y9YkF88KCtLuBjjqDKCRLxF4LycjHODKyQQ7mN/t5AtP9yKOsNvWF+M4IfReg51kohau6FauQx87by5NIRPdkNPvkQ==\n-----END CERTIFICATE-----"
|
||||
} ],
|
||||
"NetworkConfigurations": [ {
|
||||
"GUID": "{64c4f86b-cf6a-4e4a-8eff-456def}",
|
||||
"Name": "OpenWrt",
|
||||
"ProxySettings": {
|
||||
"Manual": {
|
||||
"FTPProxy": {
|
||||
"Host": "192.168.2.1",
|
||||
"Port": 8889
|
||||
},
|
||||
"HTTPProxy": {
|
||||
"Host": "192.168.2.1",
|
||||
"Port": 8889
|
||||
},
|
||||
"SOCKS": {
|
||||
"Host": "192.168.2.1",
|
||||
"Port": 8889
|
||||
},
|
||||
"SecureHTTPProxy": {
|
||||
"Host": "192.168.2.1",
|
||||
"Port": 8889
|
||||
}
|
||||
},
|
||||
"Type": "Manual"
|
||||
},
|
||||
"Type": "WiFi",
|
||||
"WiFi": {
|
||||
"AutoConnect": true,
|
||||
"HiddenSSID": false,
|
||||
"Passphrase": "some passphrase",
|
||||
"SSID": "OpenWrt",
|
||||
"Security": "WPA-PSK"
|
||||
}
|
||||
} ]
|
||||
}
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"GUID": "{a3860e83-f03d-4cb1-bafa-b22c9e746950}",
|
||||
"Type": "vpn",
|
||||
"Name": "google-dogfood",
|
||||
"Name": "my vpn",
|
||||
"SaveCredentials": false,
|
||||
"Provider.Type": "openvpn",
|
||||
"Provider.Host": "v.ext.google.com",
|
||||
"Provider.Host": "vpn.my.domain.com",
|
||||
"OpenVPN.AuthRetry": "interact",
|
||||
"OpenVPN.User": "some username",
|
||||
"OpenVPN.Password": "some password",
|
||||
@ -12,14 +12,14 @@
|
||||
"OpenVPN.CompLZO": "true",
|
||||
"OpenVPN.ServerPollTimeout": "10",
|
||||
"OpenVPN.RemoteCertKU": "e0",
|
||||
"OpenVPN.CACertNSS": "{14ff4d51-64c1-4c86-a622-054d8e55e750}",
|
||||
"OpenVPN.CACertNSS": "{14ff4d51-64c1-4c86-a622-054xyz}",
|
||||
"OpenVPN.RemoteCertTLS": "server",
|
||||
"OpenVPN.Port": "443",
|
||||
"OpenVPN.TLSRemote": "v.ext.google.com",
|
||||
"OpenVPN.TLSRemote": "my.domain.com",
|
||||
"OpenVPN.KeyDirection": "1",
|
||||
"OpenVPN.RenegSec": "0",
|
||||
"OpenVPN.RemoteCertEKU": "TLS Web Server Authentication",
|
||||
"OpenVPN.Proto": "udp",
|
||||
"OpenVPN.PushPeerInfo": "true",
|
||||
"OpenVPN.TLSAuthContents": "-----BEGIN OpenVPN Static key V1-----\nf8a19b8fddda3a38e06b883c48c83474\n0d1dfe7e5cadb2891387ac2d85198cdf\ne14274d03d12c4128c6c8967f84b1b39\n22452fb869280cde868bcf3932615927\nab1948d951c19183276fa249fd6e1e5f\nfc1c41400b59493a39cad872f5c7e777\n310d685d9c30abff7f206afc09cc99d9\ne40b2091e29af5b37d191628fba6d86e\n3a239b45b1b5a6be3229663ee7a7dc67\n2fa5be59fe7ceb41d2c78f94237c2185\n0aea1b06d739bca83240671167ddd2c2\n9cfd931df468536bfd1be99cd05160d8\n09ebfe4b8da88fb1923b19ad1abfc45e\n0402321e41af54e7d19ac95b1a7cec9a\nbf60a8eabcd5eecc84773af211477ee9\n9c988269638f9f1bb668028bb688dea2\nEND OpenVPN Static key V1-----\n"
|
||||
"OpenVPN.TLSAuthContents": "-----BEGIN OpenVPN Static key V1-----\n83f8e7ccd99be189b4663e18615f9166\nd885cdea6c8accb0ebf5be304f0b8081\n5404f2a6574e029815d7a2fb65b83d0c\n676850714c6a56b23415a78e06aad6b1\n34900dd512049598382039e4816cb5ff\n1848532b71af47578c9b4a14b5bca49f\n99e0ae4dae2f4e5eadfea374aeb8fb1e\na6fdf02adc73ea778dfd43d64bf7bc75\n7779d629498f8c2fbfd32812bfdf6df7\n8cebafafef3e5496cb13202274f2768a\n1959bc53d67a70945c4c8c6f34b63327\nfb60dc84990ffec1243461e0b6310f61\ne90aee1f11fb6292d6f5fcd7cd508aab\n50d80f9963589c148cb4b933ec86128d\ned77d3fad6005b62f36369e2319f52bd\n09c6d2e52cce2362a05009dc29b6b39a\n-----END OpenVPN Static key V1-----\n"
|
||||
}
|
||||
|
@ -1,9 +1,9 @@
|
||||
{
|
||||
"GUID": "{a3860e83-f03d-4cb1-bafa-b22c9e746950}",
|
||||
"Name": "google-dogfood",
|
||||
"Name": "my vpn",
|
||||
"Type": "VPN",
|
||||
"VPN": {
|
||||
"Host": "v.ext.google.com",
|
||||
"Host": "vpn.my.domain.com",
|
||||
"Type": "OpenVPN",
|
||||
"OpenVPN": {
|
||||
"AuthRetry": "interact",
|
||||
@ -20,11 +20,11 @@
|
||||
"RemoteCertTLS": "server",
|
||||
"RenegSec": 0,
|
||||
"SaveCredentials": false,
|
||||
"ServerCARef": "{14ff4d51-64c1-4c86-a622-054d8e55e750}",
|
||||
"ServerCARef": "{14ff4d51-64c1-4c86-a622-054xyz}",
|
||||
"ServerPollTimeout": 10,
|
||||
"StaticChallenge": "Please enter token OTP",
|
||||
"TLSAuthContents": "-----BEGIN OpenVPN Static key V1-----\nf8a19b8fddda3a38e06b883c48c83474\n0d1dfe7e5cadb2891387ac2d85198cdf\ne14274d03d12c4128c6c8967f84b1b39\n22452fb869280cde868bcf3932615927\nab1948d951c19183276fa249fd6e1e5f\nfc1c41400b59493a39cad872f5c7e777\n310d685d9c30abff7f206afc09cc99d9\ne40b2091e29af5b37d191628fba6d86e\n3a239b45b1b5a6be3229663ee7a7dc67\n2fa5be59fe7ceb41d2c78f94237c2185\n0aea1b06d739bca83240671167ddd2c2\n9cfd931df468536bfd1be99cd05160d8\n09ebfe4b8da88fb1923b19ad1abfc45e\n0402321e41af54e7d19ac95b1a7cec9a\nbf60a8eabcd5eecc84773af211477ee9\n9c988269638f9f1bb668028bb688dea2\nEND OpenVPN Static key V1-----\n",
|
||||
"TLSRemote": "v.ext.google.com",
|
||||
"TLSAuthContents": "-----BEGIN OpenVPN Static key V1-----\n83f8e7ccd99be189b4663e18615f9166\nd885cdea6c8accb0ebf5be304f0b8081\n5404f2a6574e029815d7a2fb65b83d0c\n676850714c6a56b23415a78e06aad6b1\n34900dd512049598382039e4816cb5ff\n1848532b71af47578c9b4a14b5bca49f\n99e0ae4dae2f4e5eadfea374aeb8fb1e\na6fdf02adc73ea778dfd43d64bf7bc75\n7779d629498f8c2fbfd32812bfdf6df7\n8cebafafef3e5496cb13202274f2768a\n1959bc53d67a70945c4c8c6f34b63327\nfb60dc84990ffec1243461e0b6310f61\ne90aee1f11fb6292d6f5fcd7cd508aab\n50d80f9963589c148cb4b933ec86128d\ned77d3fad6005b62f36369e2319f52bd\n09c6d2e52cce2362a05009dc29b6b39a\n-----END OpenVPN Static key V1-----\n",
|
||||
"TLSRemote": "my.domain.com",
|
||||
"Username": "some username",
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user