| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- package xray
- import (
- "encoding/base64"
- "testing"
- )
- func testWGKey(seed byte) string {
- raw := make([]byte, 32)
- for i := range raw {
- raw[i] = seed
- }
- return base64.StdEncoding.EncodeToString(raw)
- }
- func TestValidateOutboundConfig_PiaUserspaceWireGuard(t *testing.T) {
- piaOutbound := `{
- "tag": "pia-us-east-useast1",
- "piaHostname": "useast1",
- "protocol": "wireguard",
- "settings": {
- "secretKey": "` + testWGKey(1) + `",
- "address": ["10.0.0.2/32"],
- "mtu": 1420,
- "noKernelTun": true,
- "peers": [{
- "publicKey": "` + testWGKey(2) + `",
- "endpoint": "198.51.100.10:51820",
- "allowedIPs": ["0.0.0.0/0"],
- "keepAlive": 25
- }]
- }
- }`
- if err := ValidateOutboundConfig([]byte(piaOutbound)); err != nil {
- t.Fatalf("xray-core rejected the PIA WireGuard outbound the panel emits: %v", err)
- }
- second := `{
- "tag": "pia-us-west-uswest1",
- "piaHostname": "uswest1",
- "protocol": "wireguard",
- "settings": {
- "secretKey": "` + testWGKey(1) + `",
- "address": ["10.0.0.2/32"],
- "mtu": 1420,
- "noKernelTun": true,
- "peers": [{
- "publicKey": "` + testWGKey(2) + `",
- "endpoint": "198.51.100.20:51820",
- "allowedIPs": ["0.0.0.0/0"],
- "keepAlive": 25
- }]
- }
- }`
- if err := ValidateOutboundConfig([]byte(second)); err != nil {
- t.Fatalf("second PIA WireGuard outbound: %v", err)
- }
- }
|