Project

General

Profile

« Previous | Next » 

Revision 453d9c96

Added by Jim Pingle almost 14 years ago

Fixup OpenVPN status a bit to properly handle SSL servers using a /30 (no server directive) and also be a little more verbose about what is happening, if we can tell.

View differences:

etc/inc/openvpn.inc
776 776

  
777 777
}
778 778

  
779
function openvpn_get_active_servers($type="ssl") {
779
function openvpn_get_active_servers($type="multipoint") {
780 780
	global $config, $g;
781 781

  
782 782
	$servers = array();
......
801 801
			$mode_id = "server{$vpnid}";
802 802
			$server['mgmt'] = $mode_id;
803 803
			$socket = "unix://{$g['varetc_path']}/openvpn/{$mode_id}.sock";
804
			if (($server['mode'] == "p2p_shared_key") && ($type == "sharedkey"))
804
			list($tn, $sm) = explode('/', $settings['tunnel_network']);
805

  
806
			if ((($server['mode'] == "p2p_shared_key") || ($sm >= 30) ) && ($type == "p2p"))
805 807
				$servers[] = openvpn_get_client_status($server, $socket);
806
			elseif (($server['mode'] != "p2p_shared_key") && ($type == "ssl"))
808
			elseif (($server['mode'] != "p2p_shared_key") && ($type == "multipoint") && ($sm < 30))
807 809
				$servers[] = openvpn_get_server_status($server, $socket);
810

  
808 811
		}
809 812
	}
810 813
	return $servers;
......
926 929
				$client['virtual_addr']  = $list[3];
927 930
				$client['remote_host'] = $list[4];
928 931
			}
932
			if (strstr($line,"CONNECTING")) {
933
				$client['status']="connecting";
934
			}
935
			if (strstr($line,"ASSIGN_IP")) {
936
				$client['status']="waiting";
937
				$list = explode(",", $line);
938

  
939
				$client['connect_time']  = date("D M j G:i:s Y", $list[0]);
940
				$client['virtual_addr']  = $list[3];
941
			}
942
			if (strstr($line,"RECONNECTING")) {
943
				$client['status']="reconnecting";
944
				$list = explode(",", $line);
945

  
946
				$client['connect_time']  = date("D M j G:i:s Y", $list[0]);
947
				$client['status'] .= "; " . $list[2];
948
			}
929 949
			/* parse end of output line */
930 950
			if (strstr($line, "END") || strstr($line, "ERROR"))
931 951
				break;
usr/local/www/status_openvpn.php
98 98
}
99 99

  
100 100
$servers = openvpn_get_active_servers();
101
$sk_servers = openvpn_get_active_servers("sharedkey");
101
$sk_servers = openvpn_get_active_servers("p2p");
102 102
$clients = openvpn_get_active_clients();
103 103

  
104 104
include("head.inc"); ?>
......
202 202
<table style="padding-top:0px; padding-bottom:0px; padding-left:0px; padding-right:0px" width="100%" border="0" cellpadding="0" cellspacing="0">
203 203
	<tr>
204 204
		<td colspan="6" class="listtopic">
205
			<?=gettext("Shared Key Server Instance Statistics"); ?>
205
			<?=gettext("Peer to Peer Server Instance Statistics"); ?>
206 206
		</td>
207 207
	</tr>
208 208
	<tr>
usr/local/www/widgets/widgets/openvpn.widget.php
55 55
}
56 56

  
57 57
$servers = openvpn_get_active_servers();
58
$sk_servers = openvpn_get_active_servers("sharedkey");
58
$sk_servers = openvpn_get_active_servers("p2p");
59 59
$clients = openvpn_get_active_clients();
60 60
?>
61 61

  
......
145 145
<table style="padding-top:0px; padding-bottom:0px; padding-left:0px; padding-right:0px" width="100%" border="0" cellpadding="0" cellspacing="0">
146 146
	<tr>
147 147
		<td colspan="6" class="listtopic">
148
			Shared Key Server Instance Statistics
148
			Peer to Peer Server Instance Statistics
149 149
		</td>
150 150
	</tr>
151 151
	<tr>

Also available in: Unified diff