return join("\n", @conf);
}
+sub parse_configuration($) {
+ my $fh = shift;
+
+ my %peer = ();
+
+ # Collect any errors
+ my @errormessages = ();
+
+ my $section = undef;
+ my $key = undef;
+ my $val = undef;
+
+ while (<$fh>) {
+ # Remove line breaks
+ chomp;
+
+ # Search for section headers
+ if ($_ =~ m/^\[(\w+)\]$/) {
+ $section = $1;
+ next;
+
+ # Search for key = value lines
+ } elsif ($_ =~ m/^(\w+)\s+=\s+(.*)$/) {
+ # Skip anything before the first section header
+ next unless (defined $section);
+
+ # Store keys and values
+ $key = $1;
+ $val = $2;
+
+ # Skip any unhandled lines
+ } else {
+ next;
+ }
+
+ # Interface section
+ if ($section eq "Interface") {
+ # Address
+ if ($key eq "Address") {
+ if (&Network::check_ip_address($val)) {
+ $peer{'CLIENT_ADDRESS'} = $val;
+ } else {
+ push(@errormessages, $Lang::tr{'invalid ip address'});
+ }
+
+ # PrivateKey
+ } elsif ($key eq "PrivateKey") {
+ if (&key_is_valid($val)) {
+ $peer{'PRIVATE_KEY'} = $val;
+ } else {
+ push(@errormessages, $Lang::tr{'malformed private key'});
+ }
+ }
+
+ # Peer section
+ } elsif ($section eq "Peer") {
+ # PublicKey
+ if ($key eq "PublicKey") {
+ if (&key_is_valid($val)) {
+ $peer{'PUBLIC_KEY'} = $val;
+ } else {
+ push(@errormessages, $Lang::tr{'malformed public key'});
+ }
+
+ # PresharedKey
+ } elsif ($key eq "PresharedKey") {
+ if (&key_is_valid($val)) {
+ $peer{'PSK'} = $val;
+ } else {
+ push(@errormessages, $Lang::tr{'malformed preshared key'});
+ }
+
+ # AllowedIPs
+ } elsif ($key eq "AllowedIPs") {
+ my @networks = split(/,/, $val);
+
+ # Check if all networks are valid
+ foreach my $network (@networks) {
+ unless (&Network::check_subnet($network)) {
+ push(@errormessages, $Lang::tr{'invalid network'} . " $network");
+ }
+ }
+
+ $peer{'REMOTE_SUBNETS'} = join(/, /, @networks);
+ # Endpoint
+ } elsif ($key eq "Endpoint") {
+ my $address = $val;
+ my $port = $DEFAULT_PORT;
+
+ # Try to separate the port (if any)
+ if ($val =~ m/^(.*):(\d+)$/) {
+ $address = $1;
+ $port = $2;
+ }
+
+ # Check if we have a valid IP address
+ if (&Network::check_ip_address($address)) {
+ # nothing
+
+ # Otherwise this fails
+ } else {
+ push(@errormessages, $Lang::tr{'invalid endpoint address'});
+ next;
+ }
+
+ # Store the values
+ $peer{'ENDPOINT_ADDRESS'} = $address;
+ $peer{'ENDPOINT_PORT'} = $port;
+
+ # PersistentKeepalive
+ } elsif ($key eq "PersistentKeepalive") {
+ # Must be an integer
+ if ($val =~ m/^(\d+)$/) {
+ $peer{'KEEPALIVE'} = $1;
+ } else {
+ push(@errormessages, $Lang::tr{'invalid keepalive interval'});
+ }
+ }
+ }
+ }
+
+ return %peer, @errormessages;
+}
+
1;
WARNING: untranslated string: ignore filter = Ignore filter
WARNING: untranslated string: ike lifetime should be between 1 and 24 hours = IKE lifetime should be between 1 and 24 hours.
WARNING: untranslated string: imei = IMEI
+WARNING: untranslated string: import connection = Import a Connection
WARNING: untranslated string: imsi = IMSI
WARNING: untranslated string: include logfiles = Include logfiles
WARNING: untranslated string: incoming compression in bytes per second = Incoming Compression
WARNING: untranslated string: invalid domain name = Invalid domain name.
WARNING: untranslated string: invalid end address = Invalid end address.
WARNING: untranslated string: invalid endpoint = Invalid Endpoint
+WARNING: untranslated string: invalid endpoint address = Invalid Endpoint Address
WARNING: untranslated string: invalid fixed ip address = Invalid fixed IP address
WARNING: untranslated string: invalid fixed mac address = Invalid fixed MAC address
WARNING: untranslated string: invalid hostname = Invalid hostname.
WARNING: untranslated string: invalid input for subscription code = Invalid input for subscription code
WARNING: untranslated string: invalid input for valid till days = Invalid input for Valid till (days).
WARNING: untranslated string: invalid ip = Invalid IP Address
+WARNING: untranslated string: invalid ip address = Invalid IP Address
WARNING: untranslated string: invalid ip or hostname = Invalid IP Address or Hostname
WARNING: untranslated string: invalid keep time = Keep time must be a valid number
+WARNING: untranslated string: invalid keepalive interval = Invalid Keepalive Interval
WARNING: untranslated string: invalid key = Invalid key.
WARNING: untranslated string: invalid local-remote id = local & remote id must not be equal and begin with a "@" sign. These are leftid and rightid in strongswan terminology.
WARNING: untranslated string: invalid logserver address = Invalid syslogd server address
WARNING: untranslated string: invalid minimum object size = Invalid minimum object size.
WARNING: untranslated string: invalid mtu input = Invalid MTU
WARNING: untranslated string: invalid netmask = Invalid netmask
+WARNING: untranslated string: invalid network = Invalid Network
WARNING: untranslated string: invalid port = Invalid port. Must be a valid port number.
WARNING: untranslated string: invalid primary dns = Invalid primary DNS.
WARNING: untranslated string: invalid primary ntp = Invalid Primary NTP server address
WARNING: untranslated string: mac2 new = new MAC address 2 (vdsl-iptv):
WARNING: untranslated string: magic packet send to: = Magic packet send to:
WARNING: untranslated string: main page = Main page
+WARNING: untranslated string: malformed preshared key = Malformed Pre-Shared Key
+WARNING: untranslated string: malformed private key = Malformed Private Key
+WARNING: untranslated string: malformed public key = Malformed Public Key
WARNING: untranslated string: manage shares = Manage Shares
WARNING: untranslated string: manually = Manually
WARNING: untranslated string: map to guest = Map to Guest
WARNING: untranslated string: hostile networks total = Total Hostile Networks
WARNING: untranslated string: ids provider eol = (EOL)
WARNING: untranslated string: ids rulesets = Rulesets
+WARNING: untranslated string: import connection = Import a Connection
WARNING: untranslated string: info messages = unknown string
WARNING: untranslated string: invalid endpoint = Invalid Endpoint
+WARNING: untranslated string: invalid endpoint address = Invalid Endpoint Address
+WARNING: untranslated string: invalid ip address = Invalid IP Address
WARNING: untranslated string: invalid ip or hostname = Invalid IP Address or Hostname
+WARNING: untranslated string: invalid keepalive interval = Invalid Keepalive Interval
+WARNING: untranslated string: invalid network = Invalid Network
WARNING: untranslated string: ips throughput = Throughput
WARNING: untranslated string: last updated = Last Updated
WARNING: untranslated string: load average = Load Average
WARNING: untranslated string: local subnets = Local Subnets
WARNING: untranslated string: log drop hostile in = Log dropped packets FROM hostile networks
WARNING: untranslated string: log drop hostile out = Log dropped packets TO hostile networks
+WARNING: untranslated string: malformed preshared key = Malformed Pre-Shared Key
+WARNING: untranslated string: malformed private key = Malformed Private Key
+WARNING: untranslated string: malformed public key = Malformed Public Key
WARNING: untranslated string: no data = unknown string
WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
WARNING: untranslated string: openvpn cert expires soon = Expires Soon
WARNING: untranslated string: hostile networks total = Total Hostile Networks
WARNING: untranslated string: ids provider eol = (EOL)
WARNING: untranslated string: ids rulesets = Rulesets
+WARNING: untranslated string: import connection = Import a Connection
WARNING: untranslated string: invalid endpoint = Invalid Endpoint
+WARNING: untranslated string: invalid endpoint address = Invalid Endpoint Address
+WARNING: untranslated string: invalid ip address = Invalid IP Address
+WARNING: untranslated string: invalid keepalive interval = Invalid Keepalive Interval
+WARNING: untranslated string: invalid network = Invalid Network
WARNING: untranslated string: ips throughput = Throughput
WARNING: untranslated string: last updated = Last Updated
WARNING: untranslated string: load average = Load Average
WARNING: untranslated string: local subnets = Local Subnets
+WARNING: untranslated string: malformed preshared key = Malformed Pre-Shared Key
+WARNING: untranslated string: malformed private key = Malformed Private Key
+WARNING: untranslated string: malformed public key = Malformed Public Key
WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
WARNING: untranslated string: ovpn roadwarrior server = OpenVPN Roadwarrior Server
WARNING: untranslated string: pakfire ago = ago.
WARNING: untranslated string: ids unable to download the ruleset = Unable to download the ruleset
WARNING: untranslated string: ids visit provider website = Visit provider website
WARNING: untranslated string: ids working = Changes are being applied. Please wait until all operations have completed successfully...
+WARNING: untranslated string: import connection = Import a Connection
WARNING: untranslated string: incoming compression in bytes per second = Incoming Compression
WARNING: untranslated string: incoming overhead in bytes per second = Incoming Overhead
WARNING: untranslated string: info messages = unknown string
WARNING: untranslated string: interface mode = Interface
WARNING: untranslated string: intrusion prevention system = Intrusion Prevention System
WARNING: untranslated string: invalid endpoint = Invalid Endpoint
+WARNING: untranslated string: invalid endpoint address = Invalid Endpoint Address
WARNING: untranslated string: invalid input for inactivity timeout = Invalid input for Inactivity Timeout
WARNING: untranslated string: invalid input for interface address = Invalid input for interface address
WARNING: untranslated string: invalid input for interface mode = Invalid input for interface mode
WARNING: untranslated string: invalid input for mode = Invalid input for mode
WARNING: untranslated string: invalid input for subscription code = Invalid input for subscription code
WARNING: untranslated string: invalid input for valid till days = Invalid input for Valid till (days).
+WARNING: untranslated string: invalid ip address = Invalid IP Address
WARNING: untranslated string: invalid ip or hostname = Invalid IP Address or Hostname
+WARNING: untranslated string: invalid keepalive interval = Invalid Keepalive Interval
WARNING: untranslated string: invalid logserver protocol = Invalid syslogd server protocol
+WARNING: untranslated string: invalid network = Invalid Network
WARNING: untranslated string: ip basic info = Basic IP information
WARNING: untranslated string: ip info for = IP information for
WARNING: untranslated string: ipblocklist = IP Address Blocklists
WARNING: untranslated string: log drop hostile out = Log dropped packets TO hostile networks
WARNING: untranslated string: log dropped conntrack invalids = Log dropped packets classified as INVALID by connection tracking
WARNING: untranslated string: log server protocol = protocol:
+WARNING: untranslated string: malformed preshared key = Malformed Pre-Shared Key
+WARNING: untranslated string: malformed private key = Malformed Private Key
+WARNING: untranslated string: malformed public key = Malformed Public Key
WARNING: untranslated string: masquerade blue = Masquerade BLUE
WARNING: untranslated string: masquerade green = Masquerade GREEN
WARNING: untranslated string: masquerade orange = Masquerade ORANGE
WARNING: untranslated string: ids visit provider website = Visit provider website
WARNING: untranslated string: ids working = Changes are being applied. Please wait until all operations have completed successfully...
WARNING: untranslated string: imei = IMEI
+WARNING: untranslated string: import connection = Import a Connection
WARNING: untranslated string: imsi = IMSI
WARNING: untranslated string: incoming compression in bytes per second = Incoming Compression
WARNING: untranslated string: incoming overhead in bytes per second = Incoming Overhead
WARNING: untranslated string: interface mode = Interface
WARNING: untranslated string: intrusion prevention system = Intrusion Prevention System
WARNING: untranslated string: invalid endpoint = Invalid Endpoint
+WARNING: untranslated string: invalid endpoint address = Invalid Endpoint Address
WARNING: untranslated string: invalid input for inactivity timeout = Invalid input for Inactivity Timeout
WARNING: untranslated string: invalid input for interface address = Invalid input for interface address
WARNING: untranslated string: invalid input for interface mode = Invalid input for interface mode
WARNING: untranslated string: invalid input for mode = Invalid input for mode
WARNING: untranslated string: invalid input for subscription code = Invalid input for subscription code
WARNING: untranslated string: invalid input for valid till days = Invalid input for Valid till (days).
+WARNING: untranslated string: invalid ip address = Invalid IP Address
WARNING: untranslated string: invalid ip or hostname = Invalid IP Address or Hostname
+WARNING: untranslated string: invalid keepalive interval = Invalid Keepalive Interval
WARNING: untranslated string: invalid logserver protocol = Invalid syslogd server protocol
+WARNING: untranslated string: invalid network = Invalid Network
WARNING: untranslated string: ip basic info = Basic IP information
WARNING: untranslated string: ip info for = IP information for
WARNING: untranslated string: ipblocklist = IP Address Blocklists
WARNING: untranslated string: log drop hostile out = Log dropped packets TO hostile networks
WARNING: untranslated string: log dropped conntrack invalids = Log dropped packets classified as INVALID by connection tracking
WARNING: untranslated string: log server protocol = protocol:
+WARNING: untranslated string: malformed preshared key = Malformed Pre-Shared Key
+WARNING: untranslated string: malformed private key = Malformed Private Key
+WARNING: untranslated string: malformed public key = Malformed Public Key
WARNING: untranslated string: masquerade blue = Masquerade BLUE
WARNING: untranslated string: masquerade green = Masquerade GREEN
WARNING: untranslated string: masquerade orange = Masquerade ORANGE
WARNING: untranslated string: ids visit provider website = Visit provider website
WARNING: untranslated string: ids working = Changes are being applied. Please wait until all operations have completed successfully...
WARNING: untranslated string: imei = IMEI
+WARNING: untranslated string: import connection = Import a Connection
WARNING: untranslated string: imsi = IMSI
WARNING: untranslated string: incoming compression in bytes per second = Incoming Compression
WARNING: untranslated string: incoming firewall access = Incoming Firewall Access
WARNING: untranslated string: interface mode = Interface
WARNING: untranslated string: intrusion prevention system = Intrusion Prevention System
WARNING: untranslated string: invalid endpoint = Invalid Endpoint
+WARNING: untranslated string: invalid endpoint address = Invalid Endpoint Address
WARNING: untranslated string: invalid input for dpd delay = Invalid input for DPD delay
WARNING: untranslated string: invalid input for dpd timeout = Invalid input for DPD timeout
WARNING: untranslated string: invalid input for inactivity timeout = Invalid input for Inactivity Timeout
WARNING: untranslated string: invalid input for mode = Invalid input for mode
WARNING: untranslated string: invalid input for subscription code = Invalid input for subscription code
WARNING: untranslated string: invalid input for valid till days = Invalid input for Valid till (days).
+WARNING: untranslated string: invalid ip address = Invalid IP Address
WARNING: untranslated string: invalid ip or hostname = Invalid IP Address or Hostname
+WARNING: untranslated string: invalid keepalive interval = Invalid Keepalive Interval
WARNING: untranslated string: invalid logserver protocol = Invalid syslogd server protocol
+WARNING: untranslated string: invalid network = Invalid Network
WARNING: untranslated string: ip basic info = Basic IP information
WARNING: untranslated string: ip info for = IP information for
WARNING: untranslated string: ipblocklist = IP Address Blocklists
WARNING: untranslated string: log drop hostile out = Log dropped packets TO hostile networks
WARNING: untranslated string: log dropped conntrack invalids = Log dropped packets classified as INVALID by connection tracking
WARNING: untranslated string: log server protocol = protocol:
+WARNING: untranslated string: malformed preshared key = Malformed Pre-Shared Key
+WARNING: untranslated string: malformed private key = Malformed Private Key
+WARNING: untranslated string: malformed public key = Malformed Public Key
WARNING: untranslated string: masquerade blue = Masquerade BLUE
WARNING: untranslated string: masquerade green = Masquerade GREEN
WARNING: untranslated string: masquerade orange = Masquerade ORANGE
WARNING: untranslated string: ids visit provider website = Visit provider website
WARNING: untranslated string: ids working = Changes are being applied. Please wait until all operations have completed successfully...
WARNING: untranslated string: imei = IMEI
+WARNING: untranslated string: import connection = Import a Connection
WARNING: untranslated string: imsi = IMSI
WARNING: untranslated string: incoming compression in bytes per second = Incoming Compression
WARNING: untranslated string: incoming firewall access = Incoming Firewall Access
WARNING: untranslated string: interface mode = Interface
WARNING: untranslated string: intrusion prevention system = Intrusion Prevention System
WARNING: untranslated string: invalid endpoint = Invalid Endpoint
+WARNING: untranslated string: invalid endpoint address = Invalid Endpoint Address
WARNING: untranslated string: invalid input for dpd delay = Invalid input for DPD delay
WARNING: untranslated string: invalid input for dpd timeout = Invalid input for DPD timeout
WARNING: untranslated string: invalid input for inactivity timeout = Invalid input for Inactivity Timeout
WARNING: untranslated string: invalid input for mode = Invalid input for mode
WARNING: untranslated string: invalid input for subscription code = Invalid input for subscription code
WARNING: untranslated string: invalid input for valid till days = Invalid input for Valid till (days).
+WARNING: untranslated string: invalid ip address = Invalid IP Address
WARNING: untranslated string: invalid ip or hostname = Invalid IP Address or Hostname
+WARNING: untranslated string: invalid keepalive interval = Invalid Keepalive Interval
WARNING: untranslated string: invalid logserver protocol = Invalid syslogd server protocol
+WARNING: untranslated string: invalid network = Invalid Network
WARNING: untranslated string: ip basic info = Basic IP information
WARNING: untranslated string: ip info for = IP information for
WARNING: untranslated string: ipblocklist = IP Address Blocklists
WARNING: untranslated string: log drop hostile out = Log dropped packets TO hostile networks
WARNING: untranslated string: log dropped conntrack invalids = Log dropped packets classified as INVALID by connection tracking
WARNING: untranslated string: log server protocol = protocol:
+WARNING: untranslated string: malformed preshared key = Malformed Pre-Shared Key
+WARNING: untranslated string: malformed private key = Malformed Private Key
+WARNING: untranslated string: malformed public key = Malformed Public Key
WARNING: untranslated string: masquerade blue = Masquerade BLUE
WARNING: untranslated string: masquerade green = Masquerade GREEN
WARNING: untranslated string: masquerade orange = Masquerade ORANGE
WARNING: untranslated string: ids unable to download the ruleset = Unable to download the ruleset
WARNING: untranslated string: ids visit provider website = Visit provider website
WARNING: untranslated string: ids working = Changes are being applied. Please wait until all operations have completed successfully...
+WARNING: untranslated string: import connection = Import a Connection
WARNING: untranslated string: info messages = unknown string
WARNING: untranslated string: inodes = Index-Nodes
WARNING: untranslated string: interface mode = Interface
WARNING: untranslated string: intrusion prevention system = Intrusion Prevention System
WARNING: untranslated string: invalid endpoint = Invalid Endpoint
+WARNING: untranslated string: invalid endpoint address = Invalid Endpoint Address
WARNING: untranslated string: invalid input for interface address = Invalid input for interface address
WARNING: untranslated string: invalid input for interface mode = Invalid input for interface mode
WARNING: untranslated string: invalid input for interface mtu = Invalid input to interface MTU
WARNING: untranslated string: invalid input for local ip address = Invalid input for local IP address
WARNING: untranslated string: invalid input for mode = Invalid input for mode
WARNING: untranslated string: invalid input for subscription code = Invalid input for subscription code
+WARNING: untranslated string: invalid ip address = Invalid IP Address
WARNING: untranslated string: invalid ip or hostname = Invalid IP Address or Hostname
+WARNING: untranslated string: invalid keepalive interval = Invalid Keepalive Interval
+WARNING: untranslated string: invalid network = Invalid Network
WARNING: untranslated string: ip basic info = Basic IP information
WARNING: untranslated string: ip info for = IP information for
WARNING: untranslated string: ipblocklist = IP Address Blocklists
WARNING: untranslated string: log drop hostile in = Log dropped packets FROM hostile networks
WARNING: untranslated string: log drop hostile out = Log dropped packets TO hostile networks
WARNING: untranslated string: log dropped conntrack invalids = Log dropped packets classified as INVALID by connection tracking
+WARNING: untranslated string: malformed preshared key = Malformed Pre-Shared Key
+WARNING: untranslated string: malformed private key = Malformed Private Key
+WARNING: untranslated string: malformed public key = Malformed Public Key
WARNING: untranslated string: meltdown = Meltdown
WARNING: untranslated string: mitigated = Mitigated
WARNING: untranslated string: mmio stale data = MMIO Stale Data
< ids provider eol
< ids rulesets
< ids unsupported provider
+< import connection
< invalid endpoint
+< invalid endpoint address
+< invalid ip address
< invalid ip or hostname
+< invalid keepalive interval
+< invalid network
< ips throughput
< last updated
< load average
< local subnets
< log drop hostile in
< log drop hostile out
+< malformed preshared key
+< malformed private key
+< malformed public key
< oops something went wrong
< openvpn cert expires soon
< openvpn cert has expired
< ids provider eol
< ids rulesets
< ids unsupported provider
+< import connection
< invalid endpoint
+< invalid endpoint address
+< invalid ip address
+< invalid keepalive interval
+< invalid network
< ips throughput
< last updated
< load average
< local subnets
+< malformed preshared key
+< malformed private key
+< malformed public key
< oops something went wrong
< ovpn roadwarrior server
< password has quotation mark
< ids unsupported provider
< ids visit provider website
< ids working
+< import connection
< incoming compression in bytes per second
< incoming overhead in bytes per second
< inodes
< interface mode
< intrusion prevention system
< invalid endpoint
+< invalid endpoint address
< invalid input for inactivity timeout
< invalid input for interface address
< invalid input for interface mode
< invalid input for mode
< invalid input for subscription code
< invalid input for valid till days
+< invalid ip address
< invalid ip or hostname
+< invalid keepalive interval
< invalid logserver protocol
+< invalid network
< ip basic info
< ipblocklist
< ipblocklist blocklist settings
< log drop hostile out
< log dropped conntrack invalids
< log server protocol
+< malformed preshared key
+< malformed private key
+< malformed public key
< masquerade blue
< masquerade green
< masquerade orange
< ids visit provider website
< ids working
< imei
+< import connection
< imsi
< incoming compression in bytes per second
< incoming overhead in bytes per second
< interface mode
< intrusion prevention system
< invalid endpoint
+< invalid endpoint address
< invalid input for inactivity timeout
< invalid input for interface address
< invalid input for interface mode
< invalid input for mode
< invalid input for subscription code
< invalid input for valid till days
+< invalid ip address
< invalid ip or hostname
+< invalid keepalive interval
< invalid logserver protocol
+< invalid network
< ip basic info
< ipblocklist
< ipblocklist blocklist settings
< log drop hostile out
< log dropped conntrack invalids
< log server protocol
+< malformed preshared key
+< malformed private key
+< malformed public key
< masquerade blue
< masquerade green
< masquerade orange
< ids visit provider website
< ids working
< imei
+< import connection
< imsi
< incoming compression in bytes per second
< incoming firewall access
< interface mode
< intrusion prevention system
< invalid endpoint
+< invalid endpoint address
< invalid input for dpd delay
< invalid input for dpd timeout
< invalid input for inactivity timeout
< invalid input for mode
< invalid input for subscription code
< invalid input for valid till days
+< invalid ip address
< invalid ip or hostname
+< invalid keepalive interval
< invalid logserver protocol
+< invalid network
< ip basic info
< ipblocklist
< ipblocklist blocklist settings
< log dropped conntrack invalids
< log server protocol
< mac filter
+< malformed preshared key
+< malformed private key
+< malformed public key
< masquerade blue
< masquerade green
< masquerade orange
< ids visit provider website
< ids working
< imei
+< import connection
< imsi
< incoming compression in bytes per second
< incoming firewall access
< interface mode
< intrusion prevention system
< invalid endpoint
+< invalid endpoint address
< invalid input for dpd delay
< invalid input for dpd timeout
< invalid input for inactivity timeout
< invalid input for mode
< invalid input for subscription code
< invalid input for valid till days
+< invalid ip address
< invalid ip or hostname
+< invalid keepalive interval
< invalid logserver protocol
+< invalid network
< ip basic info
< ipblocklist
< ipblocklist blocklist settings
< log dropped conntrack invalids
< log server protocol
< mac filter
+< malformed preshared key
+< malformed private key
+< malformed public key
< masquerade blue
< masquerade green
< masquerade orange
< ids unsupported provider
< ids visit provider website
< ids working
+< import connection
< inodes
< interface mode
< intrusion prevention system
< invalid endpoint
+< invalid endpoint address
< invalid input for interface address
< invalid input for interface mode
< invalid input for interface mtu
< invalid input for local ip address
< invalid input for mode
< invalid input for subscription code
+< invalid ip address
< invalid ip or hostname
+< invalid keepalive interval
+< invalid network
< ip basic info
< ipblocklist
< ipblocklist blocklist settings
< log drop hostile in
< log drop hostile out
< log dropped conntrack invalids
+< malformed preshared key
+< malformed private key
+< malformed public key
< meltdown
< mitigated
< mmio stale data
require "${General::swroot}/location-functions.pl";
require "${General::swroot}/wireguard-functions.pl";
+my %cgiparams = ();
my @errormessages = ();
# Generate keys
&Wireguard::generate_keys();
# Fetch CGI parameters
-my %cgiparams = ();
-&Header::getcgihash(\%cgiparams);
+&Header::getcgihash(\%cgiparams, {'wantfile' => 1, 'filevar' => 'FH'});
# Save on main page
if ($cgiparams{"ACTION"} eq $Lang::tr{'save'}) {
} elsif ($cgiparams{"TYPE"} eq "host") {
goto EDITHOST;
+ } elsif ($cgiparams{"TYPE"} eq "import") {
+ # Parse the configuration file
+ (%cgiparams, @errormessages) = &Wireguard::parse_configuration($cgiparams{'FH'});
+
+ # We basically don't support importing RW connections, so we always
+ # need to go and show the N2N editor.
+ goto EDITNET;
+
# Ask the user what type they want
} else {
goto ADD;
$Lang::tr{'net to net vpn'}
</label>
</li>
+
+ <li>
+ <label>
+ <input type='radio' name='TYPE' value='import' />
+ $Lang::tr{'import connection'}
+ </label>
+
+ <input type='file' name='FH' />
+ </li>
</ul>
<table class="form">
'ike lifetime should be between 1 and 24 hours' => 'IKE Lebensdauer sollte zwischen 1 und 24 Stunden betragen.',
'imei' => 'IMEI',
'import' => 'Import',
+'import connection' => 'Eine Verbindung importieren',
'importkey' => 'PSK importieren',
'imsi' => 'IMSI',
'in' => 'Ein',
'invalid downlink speed' => 'Ungültige Downlink-Gerschwindigkeit.',
'invalid end address' => 'Ungültige Endadresse.',
'invalid endpoint' => 'Ungültige Gegenstelle',
+'invalid endpoint address' => 'Ungültige Endpoint-Adresse',
'invalid fixed ip address' => 'Ungültige feste IP-Adresse',
'invalid fixed mac address' => 'Ungültige feste MAC-Adresse',
'invalid hostname' => 'Ungültiger Hostname.',
'invalid input for state or province' => 'Ungültige Eingabe für Bundesstaat oder Provinz.',
'invalid input for valid till days' => 'Ungültige Eingabe für Gültig bis (Tage).',
'invalid ip' => 'Ungültige IP-Adresse',
+'invalid ip address' => 'Ungültige IP-Adresse',
'invalid ip or hostname' => 'Ungültige IP-Addresse oder Hostname',
'invalid keep time' => 'Die Aufbewahrungszeit muss eine gültige Zahl sein',
+'invalid keepalive interval' => 'Ungültiges Keepalive-Interval',
'invalid key' => 'Ungültiger Schlüssel.',
'invalid loaded file' => 'Ungültige geladene Datei',
'invalid local-remote id' => 'Local-Id und Remote-Id dürfen nicht gleich sein, und müssen einem "@"-Zeichen beginnen (in der strongSwan-Terminologie handelt es sich dabei um leftid und rightid).',
'invalid minimum object size' => 'Ungültige min. Objektgröße.',
'invalid mtu input' => 'Ungültige MTU',
'invalid netmask' => 'Ungültige Netzwerkmaske',
+'invalid network' => 'Ungültiges Netzwerk',
'invalid port' => 'Ungültiger Port. Bitte gültige Portnummer eingeben.',
'invalid port list' => 'Portlisten-Syntax lautet: port[,port]... wobei port in /etc/services enthalten ist, alternativ Portnummer',
'invalid primary dns' => 'Ungültiger primärer DNS.',
'mailmethod' => 'Mail Methode',
'mailprogramm' => 'Mail Programm',
'main page' => 'Startseite',
+'malformed preshared key' => 'Ungültiger Pre-Shared Key',
+'malformed private key' => 'Ungültiger privater Schlüssel',
+'malformed public key' => 'Ungültiger öffentlicher Schlüssel',
'manage ovpn' => '5. Tunnel Management',
'manage printers' => 'Drucker verwalten',
'manage shares' => 'Freigaben verwalten',
'ike lifetime should be between 1 and 24 hours' => 'IKE lifetime should be between 1 and 24 hours.',
'imei' => 'IMEI',
'import' => 'Import',
+'import connection' => 'Import a Connection',
'importkey' => 'Import PSK',
'imsi' => 'IMSI',
'in' => 'In',
'invalid downlink speed' => 'Invalid downlink speed.',
'invalid end address' => 'Invalid end address.',
'invalid endpoint' => 'Invalid Endpoint',
+'invalid endpoint address' => 'Invalid Endpoint Address',
'invalid fixed ip address' => 'Invalid fixed IP address',
'invalid fixed mac address' => 'Invalid fixed MAC address',
'invalid hostname' => 'Invalid hostname.',
'invalid input for subscription code' => 'Invalid input for subscription code',
'invalid input for valid till days' => 'Invalid input for Valid till (days).',
'invalid ip' => 'Invalid IP Address',
+'invalid ip address' => 'Invalid IP Address',
'invalid ip or hostname' => 'Invalid IP Address or Hostname',
'invalid keep time' => 'Keep time must be a valid number',
+'invalid keepalive interval' => 'Invalid Keepalive Interval',
'invalid key' => 'Invalid key.',
'invalid loaded file' => 'Invalid loaded file',
'invalid local-remote id' => 'local & remote id must not be equal and begin with a "@" sign. These are leftid and rightid in strongswan terminology.',
'invalid minimum object size' => 'Invalid minimum object size.',
'invalid mtu input' => 'Invalid MTU',
'invalid netmask' => 'Invalid netmask',
+'invalid network' => 'Invalid Network',
'invalid port' => 'Invalid port. Must be a valid port number.',
'invalid port list' => 'Port list syntax is: port[,port]... where port is in /etc/services or number',
'invalid primary dns' => 'Invalid primary DNS.',
'mailmethod' => 'Mailmethod',
'mailprogramm' => 'Mailprogramm',
'main page' => 'Main page',
+'malformed preshared key' => 'Malformed Pre-Shared Key',
+'malformed private key' => 'Malformed Private Key',
+'malformed public key' => 'Malformed Public Key',
'manage ovpn' => '5. Tunnel Management:',
'manage printers' => 'manage printers',
'manage shares' => 'Manage Shares',