|
From: <abe...@us...> - 2010-10-14 01:27:25
|
Revision: 4540
http://astlinux.svn.sourceforge.net/astlinux/?rev=4540&view=rev
Author: abelbeck
Date: 2010-10-14 01:27:19 +0000 (Thu, 14 Oct 2010)
Log Message:
-----------
Web interface, Network tab, add IPv6 support for External and Internal interfaces, add IPv6 tunnel support and filter sitN and ip6tun interfaces from the interface menu
Modified Paths:
--------------
branches/0.7/package/webinterface/altweb/admin/network.php
branches/0.7/package/webinterface/altweb/common/functions.php
Modified: branches/0.7/package/webinterface/altweb/admin/network.php
===================================================================
--- branches/0.7/package/webinterface/altweb/admin/network.php 2010-10-13 14:24:12 UTC (rev 4539)
+++ branches/0.7/package/webinterface/altweb/admin/network.php 2010-10-14 01:27:19 UTC (rev 4540)
@@ -23,6 +23,7 @@
// 03-29-2009, Added Timezone Menu List
// 05-11-2009, Added Internal interface DNS/DHCP Menu
// 03-21-2010, Added SMTP TLS support
+// 10-12-2010, Added IPv6 support
//
// System location of rc.conf file
$CONFFILE = '/etc/rc.conf';
@@ -126,6 +127,9 @@
}
fwrite($fp, "### gui.network.conf - start ###\n###\n");
+ $value = 'IPV6="'.$_POST['ipv6'].'"';
+ fwrite($fp, "### IP Version\n".$value."\n");
+
if ($_POST['ip_type'] === 'pppoe') {
$x_value = 'PPPOEIF="'.$_POST['ext_eth'].'"';
$value = 'EXTIF="ppp0"';
@@ -141,22 +145,44 @@
} else {
$value = 'EXTIP="'.trim($_POST['static_ip']).'"';
}
- fwrite($fp, "### External Static IP\n".$value."\n");
+ fwrite($fp, "### External Static IPv4\n".$value."\n");
if ($_POST['ip_type'] === 'dhcp') {
$value = 'EXTNM=""';
} else {
$value = 'EXTNM="'.trim($_POST['mask_ip']).'"';
}
- fwrite($fp, "### External Static NetMask\n".$value."\n");
+ fwrite($fp, "### External Static IPv4 NetMask\n".$value."\n");
if ($_POST['ip_type'] === 'dhcp') {
$value = 'EXTGW=""';
} else {
$value = 'EXTGW="'.trim($_POST['gateway_ip']).'"';
}
- fwrite($fp, "### External Static Gateway\n".$value."\n");
+ fwrite($fp, "### External Static IPv4 Gateway\n".$value."\n");
+ if ($_POST['ip_type'] === 'dhcp') {
+ $value = 'EXTIPV6=""';
+ } else {
+ $value = trim($_POST['static_ipv6']);
+ if ($value !== '' && strpos($value, '/') === FALSE) {
+ $value="$value/64";
+ }
+ $value = 'EXTIPV6="'.$value.'"';
+ }
+ fwrite($fp, "### External Static IPv6\n".$value."\n");
+
+ if ($_POST['ip_type'] === 'dhcp') {
+ $value = 'EXTGWIPV6=""';
+ } else {
+ $value = trim($_POST['gateway_ipv6']);
+ if (($pos = strpos($value, '/')) !== FALSE) {
+ $value=substr($value, 0, $pos);
+ }
+ $value = 'EXTGWIPV6="'.$value.'"';
+ }
+ fwrite($fp, "### External Static IPv6 Gateway\n".$value."\n");
+
$value = 'PPPOEUSER="'.trim($_POST['user_pppoe']).'"';
fwrite($fp, "### PPPoE Username\n".$value."\n");
@@ -182,41 +208,76 @@
fwrite($fp, "### 1st LAN Interface\n".$value."\n");
$value = 'INTIP="'.trim($_POST['int_ip']).'"';
- fwrite($fp, "### 1st LAN IP\n".$value."\n");
+ fwrite($fp, "### 1st LAN IPv4\n".$value."\n");
$value = 'INTNM="'.trim($_POST['int_mask_ip']).'"';
fwrite($fp, "### 1st LAN NetMask\n".$value."\n");
+ $value = trim($_POST['int_ipv6']);
+ if ($value !== '' && strpos($value, '/') === FALSE) {
+ $value="$value/64";
+ }
+ $value = 'INTIPV6="'.$value.'"';
+ fwrite($fp, "### 1st LAN IPv6\n".$value."\n");
+
$value = 'INT2IF="'.$_POST['int2_eth'].'"';
fwrite($fp, "### 2nd LAN Interface\n".$value."\n");
$value = 'INT2IP="'.trim($_POST['int2_ip']).'"';
- fwrite($fp, "### 2nd LAN IP\n".$value."\n");
+ fwrite($fp, "### 2nd LAN IPv4\n".$value."\n");
$value = 'INT2NM="'.trim($_POST['int2_mask_ip']).'"';
fwrite($fp, "### 2nd LAN NetMask\n".$value."\n");
+ $value = trim($_POST['int2_ipv6']);
+ if ($value !== '' && strpos($value, '/') === FALSE) {
+ $value="$value/64";
+ }
+ $value = 'INT2IPV6="'.$value.'"';
+ fwrite($fp, "### 2nd LAN IPv6\n".$value."\n");
+
$value = 'INT3IF="'.$_POST['int3_eth'].'"';
fwrite($fp, "### 3rd LAN Interface\n".$value."\n");
$value = 'INT3IP="'.trim($_POST['int3_ip']).'"';
- fwrite($fp, "### 3rd LAN IP\n".$value."\n");
+ fwrite($fp, "### 3rd LAN IPv4\n".$value."\n");
$value = 'INT3NM="'.trim($_POST['int3_mask_ip']).'"';
fwrite($fp, "### 3rd LAN NetMask\n".$value."\n");
+ $value = trim($_POST['int3_ipv6']);
+ if ($value !== '' && strpos($value, '/') === FALSE) {
+ $value="$value/64";
+ }
+ $value = 'INT3IPV6="'.$value.'"';
+ fwrite($fp, "### 3rd LAN IPv6\n".$value."\n");
+
$value = 'DMZIF="'.$_POST['dmz_eth'].'"';
fwrite($fp, "### DMZ Interface\n".$value."\n");
$value = 'DMZIP="'.trim($_POST['dmz_ip']).'"';
- fwrite($fp, "### DMZ IP\n".$value."\n");
+ fwrite($fp, "### DMZ IPv4\n".$value."\n");
$value = 'DMZNM="'.trim($_POST['dmz_mask_ip']).'"';
fwrite($fp, "### DMZ NetMask\n".$value."\n");
+ $value = trim($_POST['dmz_ipv6']);
+ if ($value !== '' && strpos($value, '/') === FALSE) {
+ $value="$value/64";
+ }
+ $value = 'DMZIPV6="'.$value.'"';
+ fwrite($fp, "### DMZ IPv6\n".$value."\n");
+
$value = 'NODHCP="'.getNODHCP_value().'"';
fwrite($fp, "### No DHCP on interfaces\n".$value."\n");
+ $x_value = $_POST['int_autoconf'];
+ $x_value .= $_POST['int2_autoconf'];
+ $x_value .= $_POST['int3_autoconf'];
+ $x_value .= $_POST['dmz_autoconf'];
+ $value = 'IPV6_AUTOCONF="'.trim($x_value).'"';
+ fwrite($fp, "### IPv6 Autoconfig\n".$value."\n");
+
$value = 'FWVERS="'.$_POST['firewall'].'"';
fwrite($fp, "### Firewall Type\n".$value."\n");
@@ -359,6 +420,17 @@
$value = 'VPN="'.trim($x_value).'"';
fwrite($fp, "### VPN Type\n".$value."\n");
+ if (($value = $_POST['ipv6_tunnel_type']) !== '') {
+ $value .= '~'.($value === '6to4-relay' ? '0/0' : $_POST['ipv6_tunnel_server']);
+ $x_value = $_POST['ipv6_tunnel_endpoint'];
+ if ($x_value !== '' && strpos($x_value, '/') === FALSE) {
+ $x_value="$x_value/64";
+ }
+ $value .= '~'.$x_value;
+ }
+ $value = 'IPV6_TUNNEL="'.$value.'"';
+ fwrite($fp, "### IPv6 Tunnel\n".$value."\n");
+
fwrite($fp, "### Dynamic DNS\n");
if ($_POST['dd_service'] !== '') {
$value = 'DDSERVICE="'.$_POST['dd_service'].'"';
@@ -498,11 +570,11 @@
return(TRUE);
}
-// Function: isVPNtype
+// Function: isVARtype
//
-function isVPNtype($db, $cur_db, $type) {
+function isVARtype($var, $db, $cur_db, $type) {
- $tokens = explode(' ', getVARdef($db, 'VPN', $cur_db));
+ $tokens = explode(' ', getVARdef($db, $var, $cur_db));
foreach ($tokens as $token) {
if ($token === $type) {
return(TRUE);
@@ -777,7 +849,7 @@
</td></tr></table>
<table class="stdtable">
<tr class="dtrow0"><td width="120"> </td><td width="120"> </td><td> </td><td width="120"> </td><td width="120"> </td><td width="120"> </td></tr>
- <tr class="dtrow0"><td class="dialogText" style="text-align: left;" colspan="6">
+ <tr class="dtrow0"><td class="dialogText" style="text-align: left;" colspan="3">
<strong>External Interface:</strong>
<select name="ext_eth">
<?php
@@ -792,7 +864,15 @@
}
}
putHtml('</select>');
+ putHtml('</td><td class="dialogText" style="text-align: right;" colspan="3">');
+ putHtml('<strong>IP Version:</strong>');
+ putHtml('<select name="ipv6">');
+ putHtml('<option value="">IPv4-Only</option>');
+ $sel = (getVARdef($db, 'IPV6', $cur_db) === 'yes') ? ' selected="selected"' : '';
+ putHtml('<option value="yes"'.$sel.'>IPv4 & IPv6</option>');
+ putHtml('</select>');
putHtml('</td></tr>');
+
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
putHtml('Connection Type:');
putHtml('<select name="ip_type">');
@@ -811,7 +891,7 @@
putHtml('Domain:<input type="text" size="36" maxlength="64" value="'.$value.'" name="domain" /></td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
$value = getVARdef($db, 'DNS', $cur_db);
- putHtml('DNS:<input type="text" size="64" maxlength="128" value="'.$value.'" name="dns" /></td></tr>');
+ putHtml('DNS:<input type="text" size="72" maxlength="256" value="'.$value.'" name="dns" /> <i>(IPv4 and/or IPv6)</i></td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="4">');
$value = getVARdef($db, 'VLANS', $cur_db);
putHtml('VLANS:<input type="text" size="36" maxlength="64" value="'.$value.'" name="vlans" /> <i>(ethN.NN ethN.NN)</i></td>');
@@ -824,14 +904,21 @@
putHtml('</td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="2">');
$value = getVARdef($db, 'EXTIP', $cur_db);
- putHtml('Static IP:<input type="text" size="18" maxlength="15" value="'.$value.'" name="static_ip" /></td>');
+ putHtml('Static IPv4:<input type="text" size="18" maxlength="15" value="'.$value.'" name="static_ip" /></td>');
putHtml('<td style="text-align: center;" colspan="2">');
$value = getVARdef($db, 'EXTNM', $cur_db);
putHtml('NetMask:<input type="text" size="18" maxlength="15" value="'.$value.'" name="mask_ip" /></td>');
putHtml('<td style="text-align: right;" colspan="2">');
$value = getVARdef($db, 'EXTGW', $cur_db);
- putHtml('Gateway:<input type="text" size="18" maxlength="15" value="'.$value.'" name="gateway_ip" /></td></tr>');
+ putHtml('IPv4 Gateway:<input type="text" size="18" maxlength="15" value="'.$value.'" name="gateway_ip" /></td></tr>');
+ putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="3">');
+ $value = getVARdef($db, 'EXTIPV6', $cur_db);
+ putHtml('Static IPv6/nn:<input type="text" size="38" maxlength="43" value="'.$value.'" name="static_ipv6" /></td>');
+ putHtml('<td style="text-align: left;" colspan="3">');
+ $value = getVARdef($db, 'EXTGWIPV6', $cur_db);
+ putHtml('IPv6 Gateway:<input type="text" size="38" maxlength="39" value="'.$value.'" name="gateway_ipv6" /></td></tr>');
+
putHtml('<tr class="dtrow1"><td class="dialogText" style="text-align: left;" colspan="6">');
putHtml('<strong>External PPPoE Settings:</strong>');
putHtml('</td></tr>');
@@ -848,7 +935,7 @@
putHtml('<strong>Internal Interfaces:</strong>');
putHtml('</td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
- putHtml('1st LAN Interface:');
+ putHtml('<strong>1st LAN Interface:</strong>');
putHtml('<select name="int_eth">');
putHtml('<option value="">none</option>');
$varif = getVARdef($db, 'INTIF', $cur_db);
@@ -861,7 +948,7 @@
putHtml('</select>');
putDNS_DHCP_Html($db, $cur_db, $varif, 'int_dhcp');
$value = getVARdef($db, 'INTIP', $cur_db);
- putHtml('– IP:<input type="text" size="16" maxlength="15" value="'.$value.'" name="int_ip" />');
+ putHtml('– IPv4:<input type="text" size="16" maxlength="15" value="'.$value.'" name="int_ip" />');
if (($value = getVARdef($db, 'INTNM', $cur_db)) === '') {
$value = '255.255.255.0';
}
@@ -869,7 +956,18 @@
putHtml('</td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
- putHtml('2nd LAN Interface:');
+ putHtml(' IPv6 Autoconfig:');
+ putHtml('<select name="int_autoconf">');
+ putHtml('<option value="">disabled</option>');
+ $sel = isVARtype('IPV6_AUTOCONF', $db, $cur_db, 'INTIF') ? ' selected="selected"' : '';
+ putHtml('<option value=" INTIF"'.$sel.'>enabled</option>');
+ putHtml('</select>');
+ $value = getVARdef($db, 'INTIPV6', $cur_db);
+ putHtml('– IPv6/nn:<input type="text" size="45" maxlength="43" value="'.$value.'" name="int_ipv6" />');
+ putHtml('</td></tr>');
+
+ putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
+ putHtml('<strong>2nd LAN Interface:</strong>');
putHtml('<select name="int2_eth">');
putHtml('<option value="">none</option>');
$varif = getVARdef($db, 'INT2IF', $cur_db);
@@ -882,7 +980,7 @@
putHtml('</select>');
putDNS_DHCP_Html($db, $cur_db, $varif, 'int2_dhcp');
$value = getVARdef($db, 'INT2IP', $cur_db);
- putHtml('– IP:<input type="text" size="16" maxlength="15" value="'.$value.'" name="int2_ip" />');
+ putHtml('– IPv4:<input type="text" size="16" maxlength="15" value="'.$value.'" name="int2_ip" />');
if (($value = getVARdef($db, 'INT2NM', $cur_db)) === '') {
$value = '255.255.255.0';
}
@@ -890,7 +988,18 @@
putHtml('</td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
- putHtml('3rd LAN Interface:');
+ putHtml(' IPv6 Autoconfig:');
+ putHtml('<select name="int2_autoconf">');
+ putHtml('<option value="">disabled</option>');
+ $sel = isVARtype('IPV6_AUTOCONF', $db, $cur_db, 'INT2IF') ? ' selected="selected"' : '';
+ putHtml('<option value=" INT2IF"'.$sel.'>enabled</option>');
+ putHtml('</select>');
+ $value = getVARdef($db, 'INT2IPV6', $cur_db);
+ putHtml('– IPv6/nn:<input type="text" size="45" maxlength="43" value="'.$value.'" name="int2_ipv6" />');
+ putHtml('</td></tr>');
+
+ putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
+ putHtml('<strong>3rd LAN Interface:</strong>');
putHtml('<select name="int3_eth">');
putHtml('<option value="">none</option>');
$varif = getVARdef($db, 'INT3IF', $cur_db);
@@ -903,7 +1012,7 @@
putHtml('</select>');
putDNS_DHCP_Html($db, $cur_db, $varif, 'int3_dhcp');
$value = getVARdef($db, 'INT3IP', $cur_db);
- putHtml('– IP:<input type="text" size="16" maxlength="15" value="'.$value.'" name="int3_ip" />');
+ putHtml('– IPv4:<input type="text" size="16" maxlength="15" value="'.$value.'" name="int3_ip" />');
if (($value = getVARdef($db, 'INT3NM', $cur_db)) === '') {
$value = '255.255.255.0';
}
@@ -911,7 +1020,18 @@
putHtml('</td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
- putHtml('The DMZ Interface:');
+ putHtml(' IPv6 Autoconfig:');
+ putHtml('<select name="int3_autoconf">');
+ putHtml('<option value="">disabled</option>');
+ $sel = isVARtype('IPV6_AUTOCONF', $db, $cur_db, 'INT3IF') ? ' selected="selected"' : '';
+ putHtml('<option value=" INT3IF"'.$sel.'>enabled</option>');
+ putHtml('</select>');
+ $value = getVARdef($db, 'INT3IPV6', $cur_db);
+ putHtml('– IPv6/nn:<input type="text" size="45" maxlength="43" value="'.$value.'" name="int3_ipv6" />');
+ putHtml('</td></tr>');
+
+ putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
+ putHtml('<strong>The DMZ Interface:</strong>');
putHtml('<select name="dmz_eth">');
putHtml('<option value="">none</option>');
$varif = getVARdef($db, 'DMZIF', $cur_db);
@@ -924,13 +1044,24 @@
putHtml('</select>');
putDNS_DHCP_Html($db, $cur_db, $varif, 'dmz_dhcp');
$value = getVARdef($db, 'DMZIP', $cur_db);
- putHtml('– IP:<input type="text" size="16" maxlength="15" value="'.$value.'" name="dmz_ip" />');
+ putHtml('– IPv4:<input type="text" size="16" maxlength="15" value="'.$value.'" name="dmz_ip" />');
if (($value = getVARdef($db, 'DMZNM', $cur_db)) === '') {
$value = '255.255.255.0';
}
putHtml('NetMask:<input type="text" size="16" maxlength="15" value="'.$value.'" name="dmz_mask_ip" />');
putHtml('</td></tr>');
+ putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
+ putHtml(' IPv6 Autoconfig:');
+ putHtml('<select name="dmz_autoconf">');
+ putHtml('<option value="">disabled</option>');
+ $sel = isVARtype('IPV6_AUTOCONF', $db, $cur_db, 'DMZIF') ? ' selected="selected"' : '';
+ putHtml('<option value=" DMZIF"'.$sel.'>enabled</option>');
+ putHtml('</select>');
+ $value = getVARdef($db, 'DMZIPV6', $cur_db);
+ putHtml('– IPv6/nn:<input type="text" size="45" maxlength="43" value="'.$value.'" name="dmz_ipv6" />');
+ putHtml('</td></tr>');
+
putHtml('<tr class="dtrow0"><td colspan="6"> </td></tr>');
putHtml('<tr class="dtrow0"><td class="dialogText" style="text-align: left;" colspan="6">');
@@ -1127,7 +1258,7 @@
putHtml('</td><td style="text-align: left;" colspan="5"> </td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: right;">');
- $sel = isVPNtype($db, $cur_db, 'openvpnclient') ? ' checked="checked"' : '';
+ $sel = isVARtype('VPN', $db, $cur_db, 'openvpnclient') ? ' checked="checked"' : '';
putHtml('<input type="checkbox" value="openvpnclient" name="openvpnclient"'.$sel.' />');
putHtml('</td><td style="text-align: left;" colspan="5">');
putHtml('OpenVPN Client –');
@@ -1135,7 +1266,7 @@
putHtml('</td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: right;">');
- $sel = isVPNtype($db, $cur_db, 'openvpn') ? ' checked="checked"' : '';
+ $sel = isVARtype('VPN', $db, $cur_db, 'openvpn') ? ' checked="checked"' : '';
putHtml('<input type="checkbox" value="openvpn" name="openvpn"'.$sel.' />');
putHtml('</td><td style="text-align: left;" colspan="5">');
putHtml('OpenVPN Server –');
@@ -1143,7 +1274,7 @@
putHtml('</td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: right;">');
- $sel = isVPNtype($db, $cur_db, 'racoon') ? ' checked="checked"' : '';
+ $sel = isVARtype('VPN', $db, $cur_db, 'racoon') ? ' checked="checked"' : '';
putHtml('<input type="checkbox" value="ipsec" name="ipsec"'.$sel.' />');
putHtml('</td><td style="text-align: left;" colspan="5">');
putHtml('IPsec Tunnel –');
@@ -1153,6 +1284,29 @@
putHtml('<tr class="dtrow0"><td colspan="6"> </td></tr>');
putHtml('<tr class="dtrow0"><td class="dialogText" style="text-align: left;" colspan="6">');
+ putHtml('<strong>IPv6 Tunnel (6in4, 6to4):</strong>');
+ putHtml('</td></tr>');
+
+ putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
+ putHtml('IPv6 Tunnel Type:');
+ $ipv6_tunnel = explode('~', getVARdef($db, 'IPV6_TUNNEL', $cur_db));
+ putHtml('<select name="ipv6_tunnel_type">');
+ putHtml('<option value="">disabled</option>');
+ $sel = ($ipv6_tunnel[0] === '6in4-static') ? ' selected="selected"' : '';
+ putHtml('<option value="6in4-static"'.$sel.'>6in4-static</option>');
+ $sel = ($ipv6_tunnel[0] === '6to4-relay') ? ' selected="selected"' : '';
+ putHtml('<option value="6to4-relay"'.$sel.'>6to4-relay</option>');
+ putHtml('</select></td></tr>');
+ putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
+ $value = $ipv6_tunnel[1];
+ putHtml('Remote Server IPv4:<input type="text" size="16" maxlength="15" value="'.$value.'" name="ipv6_tunnel_server" />');
+ $value = $ipv6_tunnel[2];
+ putHtml('– Endpoint IPv6/nn:<input type="text" size="45" maxlength="43" value="'.$value.'" name="ipv6_tunnel_endpoint" />');
+ putHtml('</td></tr>');
+
+ putHtml('<tr class="dtrow0"><td colspan="6"> </td></tr>');
+
+ putHtml('<tr class="dtrow0"><td class="dialogText" style="text-align: left;" colspan="6">');
putHtml('<strong>Dynamic DNS Update:</strong>');
putHtml('</td></tr>');
@@ -1175,7 +1329,7 @@
putHtml('<input type="text" size="56" maxlength="200" value="'.$t_value.'" name="other_dd_service" /></td></tr>');
putHtml('<tr class="dtrow1"><td style="text-align: left;" colspan="6">');
- putHtml('DNS Get IP Address:');
+ putHtml('DNS Get IPv4 Address:');
if (($t_value = getVARdef($db, 'DDGETIP', $cur_db)) === '') {
$t_value = 'getip.krisk.org';
}
Modified: branches/0.7/package/webinterface/altweb/common/functions.php
===================================================================
--- branches/0.7/package/webinterface/altweb/common/functions.php 2010-10-13 14:24:12 UTC (rev 4539)
+++ branches/0.7/package/webinterface/altweb/common/functions.php 2010-10-14 01:27:19 UTC (rev 4540)
@@ -261,6 +261,8 @@
if ($eth !== 'lo' &&
strncmp($eth, 'ppp', 3) != 0 &&
strncmp($eth, 'tun', 3) != 0 &&
+ strncmp($eth, 'sit', 3) != 0 &&
+ strncmp($eth, 'ip6tun', 6) != 0 &&
strncmp($eth, 'dummy', 5) != 0) {
$eth_R[$id] = $eth;
$id++;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|