Project

General

Profile

Download (16 KB) Statistics
| Branch: | Tag: | Revision:
1 03b92764 Scott Ullrich
<?php
2 b46bfcf5 Bill Marquette
/* $Id$ */
3 5b237745 Scott Ullrich
/*
4
	interfaces_opt.php
5
	part of m0n0wall (http://m0n0.ch/wall)
6 03b92764 Scott Ullrich
7 5b237745 Scott Ullrich
	Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>.
8
	All rights reserved.
9 03b92764 Scott Ullrich
10 5b237745 Scott Ullrich
	Redistribution and use in source and binary forms, with or without
11
	modification, are permitted provided that the following conditions are met:
12 03b92764 Scott Ullrich
13 5b237745 Scott Ullrich
	1. Redistributions of source code must retain the above copyright notice,
14
	   this list of conditions and the following disclaimer.
15 03b92764 Scott Ullrich
16 5b237745 Scott Ullrich
	2. Redistributions in binary form must reproduce the above copyright
17
	   notice, this list of conditions and the following disclaimer in the
18
	   documentation and/or other materials provided with the distribution.
19 03b92764 Scott Ullrich
20 5b237745 Scott Ullrich
	THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
21
	INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
22
	AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
23
	AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
24
	OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
	SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
	INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27
	CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
	ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29
	POSSIBILITY OF SUCH DAMAGE.
30
*/
31
32
require("guiconfig.inc");
33
34
unset($index);
35
if ($_GET['index'])
36
	$index = $_GET['index'];
37
else if ($_POST['index'])
38
	$index = $_POST['index'];
39 03b92764 Scott Ullrich
40 5b237745 Scott Ullrich
if (!$index)
41
	exit;
42
43 6cec4795 Scott Ullrich
function remove_bad_chars($string) {
44 ab72b53b Scott Ullrich
	return preg_replace('/[^a-z|_|0-9]/i','',$string);
45 6cec4795 Scott Ullrich
}
46
47 5b237745 Scott Ullrich
$optcfg = &$config['interfaces']['opt' . $index];
48 6cec4795 Scott Ullrich
$optcfg['descr'] = remove_bad_chars($optcfg['descr']);
49 fc959b55 Scott Ullrich
50 6cec4795 Scott Ullrich
$pconfig['descr'] = $optcfg['descr'];
51 5b237745 Scott Ullrich
$pconfig['bridge'] = $optcfg['bridge'];
52 03b92764 Scott Ullrich
53 5b237745 Scott Ullrich
$pconfig['enable'] = isset($optcfg['enable']);
54
55 0311dbd5 Scott Ullrich
$pconfig['blockpriv'] = isset($optcfg['blockpriv']);
56
$pconfig['blockbogons'] = isset($optcfg['blockbogons']);
57
$pconfig['spoofmac'] = $optcfg['spoofmac'];
58
$pconfig['mtu'] = $optcfg['mtu'];
59
60 c1ec2c2f Scott Ullrich
$pconfig['disableftpproxy'] = isset($optcfg['disableftpproxy']);
61 99586fca Scott Ullrich
62 5b237745 Scott Ullrich
/* Wireless interface? */
63
if (isset($optcfg['wireless'])) {
64
	require("interfaces_wlan.inc");
65
	wireless_config_init();
66
}
67
68 0311dbd5 Scott Ullrich
if ($optcfg['ipaddr'] == "dhcp") {
69
	$pconfig['type'] = "DHCP";
70 99586fca Scott Ullrich
	$pconfig['dhcphostname'] = $optcfg['dhcphostname'];
71 0311dbd5 Scott Ullrich
} else {
72
	$pconfig['type'] = "Static";
73
	$pconfig['ipaddr'] = $optcfg['ipaddr'];
74
	$pconfig['subnet'] = $optcfg['subnet'];
75
	$pconfig['gateway'] = $optcfg['gateway'];
76
	$pconfig['pointtopoint'] = $optcfg['pointtopoint'];
77
}
78
79 5b237745 Scott Ullrich
if ($_POST) {
80
81
	unset($input_errors);
82
83 8698218d Scott Ullrich
	/* filter out spaces from descriptions  */
84 6cec4795 Scott Ullrich
	$POST['descr'] = remove_bad_chars($POST['descr']);
85 8698218d Scott Ullrich
86 f169d6ca Scott Ullrich
	$pconfig = $_POST;
87
88 5b237745 Scott Ullrich
	/* input validation */
89
	if ($_POST['enable']) {
90 03b92764 Scott Ullrich
91 5b237745 Scott Ullrich
		/* description unique? */
92
		for ($i = 1; isset($config['interfaces']['opt' . $i]); $i++) {
93
			if ($i != $index) {
94
				if ($config['interfaces']['opt' . $i]['descr'] == $_POST['descr']) {
95
					$input_errors[] = "An interface with the specified description already exists.";
96
				}
97
			}
98
		}
99 03b92764 Scott Ullrich
100 5b237745 Scott Ullrich
		if ($_POST['bridge']) {
101
			/* double bridging? */
102
			for ($i = 1; isset($config['interfaces']['opt' . $i]); $i++) {
103
				if ($i != $index) {
104
					if ($config['interfaces']['opt' . $i]['bridge'] == $_POST['bridge']) {
105 62ce3b9a Scott Ullrich
						//$input_errors[] = "Optional interface {$i} " .
106
						//	"({$config['interfaces']['opt' . $i]['descr']}) is already bridged to " .
107
						//	"the specified interface.";
108 5b237745 Scott Ullrich
					} else if ($config['interfaces']['opt' . $i]['bridge'] == "opt{$index}") {
109 62ce3b9a Scott Ullrich
						//$input_errors[] = "Optional interface {$i} " .
110
						//	"({$config['interfaces']['opt' . $i]['descr']}) is already bridged to " .
111
						//	"this interface.";
112 5b237745 Scott Ullrich
					}
113
				}
114
			}
115
			if ($config['interfaces'][$_POST['bridge']]['bridge']) {
116 62ce3b9a Scott Ullrich
				//$input_errors[] = "The specified interface is already bridged to " .
117
				//	"another interface.";
118 5b237745 Scott Ullrich
			}
119
			/* captive portal on? */
120
			if (isset($config['captiveportal']['enable'])) {
121 c2c399a4 Scott Ullrich
				//$input_errors[] = "Interfaces cannot be bridged while the captive portal is enabled.";
122 5b237745 Scott Ullrich
			}
123
		} else {
124 e4065f5b Scott Ullrich
			if ($_POST['type'] <> "DHCP") {
125
				$reqdfields = explode(" ", "descr ipaddr subnet");
126
				$reqdfieldsn = explode(",", "Description,IP address,Subnet bit count");
127
				do_input_validation($_POST, $reqdfields, $reqdfieldsn, &$input_errors);
128
				if (($_POST['ipaddr'] && !is_ipaddr($_POST['ipaddr']))) {
129
					$input_errors[] = "A valid IP address must be specified.";
130
				}
131
				if (($_POST['subnet'] && !is_numeric($_POST['subnet']))) {
132
					$input_errors[] = "A valid subnet bit count must be specified.";
133
				}
134
				if($_POST['gateway'] <> "" && !is_ipaddr($_POST['gateway'])) {
135
					$input_errors[] = "A valid gateway must be specified.";
136
				}
137 92b17aed Scott Ullrich
			}
138 5b237745 Scott Ullrich
		}
139 3cb6ab88 Bill Marquette
	        if ($_POST['mtu'] && (($_POST['mtu'] < 576) || ($_POST['mtu'] > 1500))) {
140
			$input_errors[] = "The MTU must be between 576 and 1500 bytes.";
141 0138d492 Scott Ullrich
		}		
142 3a843b96 Scott Ullrich
		if (($_POST['spoofmac'] && !is_macaddr($_POST['spoofmac']))) {
143
			$input_errors[] = "A valid MAC address must be specified.";
144
		}		
145 5b237745 Scott Ullrich
	}
146 03b92764 Scott Ullrich
147 f691bc2f Scott Ullrich
	if($_POST['mtu']) {
148
		if($_POST['mtu'] < 24 or $_POST['mtu'] > 1501)
149
			$input_errors[] = "A valid MTU is required 24-1500.";
150
	}
151
	
152 5b237745 Scott Ullrich
	/* Wireless interface? */
153
	if (isset($optcfg['wireless'])) {
154
		$wi_input_errors = wireless_config_post();
155
		if ($wi_input_errors) {
156
			$input_errors = array_merge($input_errors, $wi_input_errors);
157
		}
158
	}
159 03b92764 Scott Ullrich
160 5b237745 Scott Ullrich
	if (!$input_errors) {
161 0311dbd5 Scott Ullrich
162 9a6757a1 Scott Ullrich
		$bridge = discover_bridge($optcfg['if'], filter_translate_type_to_real_interface($optcfg['bridge']));
163 0d429e43 Scott Ullrich
		if($bridge <> "-1") {
164 1665e79c Scott Ullrich
			destroy_bridge($bridge);
165 91e8aab2 Scott Ullrich
		}
166
167 99586fca Scott Ullrich
		unset($optcfg['dhcphostname']);
168 c1ec2c2f Scott Ullrich
		unset($optcfg['disableftpproxy']);
169
		
170
		/* per interface pftpx helper */
171
		if($_POST['disableftpproxy'] == "yes") {
172
			$optcfg['disableftpproxy'] = true;
173
			system_start_ftp_helpers();
174
		} else {			
175
			system_start_ftp_helpers();
176
		}		
177 99586fca Scott Ullrich
178 6cec4795 Scott Ullrich
		$optcfg['descr'] = remove_bad_chars($_POST['descr']);
179 5b237745 Scott Ullrich
		$optcfg['bridge'] = $_POST['bridge'];
180
		$optcfg['enable'] = $_POST['enable'] ? true : false;
181 0311dbd5 Scott Ullrich
182
		if ($_POST['type'] == "Static") {
183
			$optcfg['ipaddr'] = $_POST['ipaddr'];
184
			$optcfg['subnet'] = $_POST['subnet'];
185
			$optcfg['gateway'] = $_POST['gateway'];
186
			if (isset($optcfg['ispointtopoint']))
187
				$optcfg['pointtopoint'] = $_POST['pointtopoint'];
188
		} else if ($_POST['type'] == "DHCP") {
189
			$optcfg['ipaddr'] = "dhcp";
190
			$optcfg['dhcphostname'] = $_POST['dhcphostname'];
191
		}
192 a12d2145 Scott Ullrich
193 2dfb79a4 Scott Ullrich
		$optcfg['blockpriv'] = $_POST['blockpriv'] ? true : false;
194
		$optcfg['blockbogons'] = $_POST['blockbogons'] ? true : false;
195
		$optcfg['spoofmac'] = $_POST['spoofmac'];
196
		$optcfg['mtu'] = $_POST['mtu'];
197
198 5b237745 Scott Ullrich
		write_config();
199 1f8caa36 Scott Ullrich
		
200 824edb6c Scott Ullrich
		$savemsg = get_std_save_message($retval);
201 5b237745 Scott Ullrich
	}
202
}
203 7f43ca88 Scott Ullrich
204
205 931066a8 Bill Marquette
$pgtitle = "Interfaces: Optional {$index} (" . htmlspecialchars($optcfg['descr']) . ")";
206 7f43ca88 Scott Ullrich
include("head.inc");
207
208 5b237745 Scott Ullrich
?>
209 b9e255dd Bill Marquette
210 5b237745 Scott Ullrich
<script language="JavaScript">
211
<!--
212
function enable_change(enable_over) {
213 a23d7248 Scott Ullrich
	var endis;
214
	endis = !((document.iform.bridge.selectedIndex == 0) || enable_over);
215
	document.iform.ipaddr.disabled = endis;
216
	document.iform.subnet.disabled = endis;
217 5b237745 Scott Ullrich
}
218
function ipaddr_change() {
219 6846116e Scott Ullrich
	document.iform.subnet.selectedIndex = gen_bits_opt(document.iform.ipaddr.value);
220 5b237745 Scott Ullrich
}
221 0311dbd5 Scott Ullrich
function type_change(enable_change,enable_change_pptp) {
222
	switch (document.iform.type.selectedIndex) {
223
		case 0:
224 57e97d71 Scott Ullrich
			document.iform.ipaddr.type.disabled = 0;
225 0311dbd5 Scott Ullrich
			document.iform.ipaddr.disabled = 0;
226
			document.iform.subnet.disabled = 0;
227
			document.iform.gateway.disabled = 0;
228
			break;
229
		case 1:
230 57e97d71 Scott Ullrich
			document.iform.ipaddr.type.disabled = 1;
231 0311dbd5 Scott Ullrich
			document.iform.ipaddr.disabled = 1;
232
			document.iform.subnet.disabled = 1;
233
			document.iform.gateway.disabled = 1;
234
			break;
235
	}
236
}
237 5b237745 Scott Ullrich
//-->
238
</script>
239 b9e255dd Bill Marquette
240 5b237745 Scott Ullrich
<body link="#0000CC" vlink="#0000CC" alink="#0000CC">
241
<?php include("fbegin.inc"); ?>
242 931066a8 Bill Marquette
<p class="pgtitle"><?=$pgtitle?></p>
243 5b237745 Scott Ullrich
<?php if ($input_errors) print_input_errors($input_errors); ?>
244
<?php if ($savemsg) print_info_box($savemsg); ?>
245
<?php if ($optcfg['if']): ?>
246
            <form action="interfaces_opt.php" method="post" name="iform" id="iform">
247
              <table width="100%" border="0" cellpadding="6" cellspacing="0">
248 7e45fdf4 Scott Ullrich
                <tr>
249 386e9c57 Seth Mos
                  <td colspan="2" valign="top" class="listtopic">Optional Interface Configuration</td>
250 7e45fdf4 Scott Ullrich
                </tr>	      
251 03b92764 Scott Ullrich
                <tr>
252 5b237745 Scott Ullrich
                  <td width="22%" valign="top" class="vtable">&nbsp;</td>
253
                  <td width="78%" class="vtable">
254 007be4f3 Scott Ullrich
			<input name="enable" type="checkbox" value="yes" <?php if ($pconfig['enable']) echo "checked"; ?> onClick="enable_change(false)">
255 5b237745 Scott Ullrich
                    <strong>Enable Optional <?=$index;?> interface</strong></td>
256 0311dbd5 Scott Ullrich
		</tr>
257 03b92764 Scott Ullrich
                <tr>
258 5b237745 Scott Ullrich
                  <td width="22%" valign="top" class="vncell">Description</td>
259 03b92764 Scott Ullrich
                  <td width="78%" class="vtable">
260 5b237745 Scott Ullrich
                    <input name="descr" type="text" class="formfld" id="descr" size="30" value="<?=htmlspecialchars($pconfig['descr']);?>">
261
					<br> <span class="vexpl">Enter a description (name) for the interface here.</span>
262 0311dbd5 Scott Ullrich
		  </td>
263
		</tr>
264
265
                <tr>
266
                  <td colspan="2" valign="top" height="16"></td>
267
                </tr>
268
                <tr>
269
                  <td colspan="2" valign="top" class="listtopic">General configuration</td>
270
                </tr>
271
                <tr>
272
                  <td valign="middle" class="vncell"><strong>Type</strong></td>
273
                  <td class="vtable"> <select name="type" class="formfld" id="type" onchange="type_change()">
274
                      <?php $opts = split(" ", "Static DHCP");
275
				foreach ($opts as $opt): ?>
276
                      <option <?php if ($opt == $pconfig['type']) echo "selected";?>>
277
                      <?=htmlspecialchars($opt);?>
278
                      </option>
279
                      <?php endforeach; ?>
280
                    </select></td>
281
                </tr>
282
                <tr>
283
                  <td valign="top" class="vncell">MAC address</td>
284
                  <td class="vtable"> <input name="spoofmac" type="text" class="formfld" id="spoofmac" size="30" value="<?=htmlspecialchars($pconfig['spoofmac']);?>">
285
		    <?php
286
			$ip = getenv('REMOTE_ADDR');
287
			$mac = `/usr/sbin/arp -an | grep {$ip} | cut -d" " -f4`;
288
			$mac = str_replace("\n","",$mac);
289
		    ?>
290
		    <a OnClick="document.forms[0].spoofmac.value='<?=$mac?>';" href="#">Copy my MAC address</a>   
291
		    <br>
292
                    This field can be used to modify (&quot;spoof&quot;) the MAC
293
                    address of the WAN interface<br>
294
                    (may be required with some cable connections)<br>
295
                    Enter a MAC address in the following format: xx:xx:xx:xx:xx:xx
296
                    or leave blank</td>
297
                </tr>
298
                <tr>
299
                  <td valign="top" class="vncell">MTU</td>
300
                  <td class="vtable"> <input name="mtu" type="text" class="formfld" id="mtu" size="8" value="<?=htmlspecialchars($pconfig['mtu']);?>">
301
                    <br>
302
                    If you enter a value in this field, then MSS clamping for
303
                    TCP connections to the value entered above minus 40 (TCP/IP
304
                    header size) will be in effect. If you leave this field blank,
305
                    an MTU of 1492 bytes for PPPoE and 1500 bytes for all other
306
                    connection types will be assumed.</td>
307
                </tr>
308
		
309 03b92764 Scott Ullrich
                <tr>
310 5b237745 Scott Ullrich
                  <td colspan="2" valign="top" height="16"></td>
311 5b80d869 Scott Ullrich
		</tr>
312
		<tr>
313 a23d7248 Scott Ullrich
                  <td colspan="2" valign="top" class="listtopic">IP configuration</td>
314 5b80d869 Scott Ullrich
		</tr>
315 6d6d0f14 Scott Ullrich
		<tr>
316 5b237745 Scott Ullrich
                  <td width="22%" valign="top" class="vncellreq">Bridge with</td>
317
                  <td width="78%" class="vtable">
318 007be4f3 Scott Ullrich
			<select name="bridge" class="formfld" id="bridge" onChange="enable_change(false)">
319 5b237745 Scott Ullrich
				  	<option <?php if (!$pconfig['bridge']) echo "selected";?> value="">none</option>
320
                      <?php $opts = array('lan' => "LAN", 'wan' => "WAN");
321
					  	for ($i = 1; isset($config['interfaces']['opt' . $i]); $i++) {
322
							if ($i != $index)
323
								$opts['opt' . $i] = "Optional " . $i . " (" .
324
									$config['interfaces']['opt' . $i]['descr'] . ")";
325
						}
326
					foreach ($opts as $opt => $optname): ?>
327 03b92764 Scott Ullrich
                      <option <?php if ($opt == $pconfig['bridge']) echo "selected";?> value="<?=htmlspecialchars($opt);?>">
328 5b237745 Scott Ullrich
                      <?=htmlspecialchars($optname);?>
329
                      </option>
330
                      <?php endforeach; ?>
331
                    </select> </td>
332 6d6d0f14 Scott Ullrich
		</tr>
333 03b92764 Scott Ullrich
                <tr>
334 5b237745 Scott Ullrich
                  <td width="22%" valign="top" class="vncellreq">IP address</td>
335 03b92764 Scott Ullrich
                  <td width="78%" class="vtable">
336 8d8c6030 Scott Ullrich
                    <input name="ipaddr" type="text" class="formfld" id="ipaddr" size="20" value="<?=htmlspecialchars($pconfig['ipaddr']);?>">
337 5b237745 Scott Ullrich
                    /
338
                	<select name="subnet" class="formfld" id="subnet">
339 21ab1cde Scott Ullrich
					<?php
340
					for ($i = 32; $i > 0; $i--) {
341
						if($i <> 31) {
342
							echo "<option value=\"{$i}\" ";
343
							if ($i == $pconfig['subnet']) echo "selected";
344
							echo ">" . $i . "</option>";
345
						}
346
					}
347
					?>                    </select>
348 5b237745 Scott Ullrich
				 </td>
349
				</tr>
350 007be4f3 Scott Ullrich
		<tr>
351 1aaa2a5f Scott Ullrich
                  <td width="22%" valign="top" class="vncell">Gateway</td>
352 007be4f3 Scott Ullrich
                  <td width="78%" class="vtable">
353
			<input name="gateway" value="<?php echo $pconfig['gateway']; ?>">
354 a12d2145 Scott Ullrich
			<br>
355 8b7a1670 cbuechler
			If you have multiple WAN connections, enter the next hop gateway (router) IP address here.  Otherwise, leave this option blank.
356 007be4f3 Scott Ullrich
		  </td>
357
		</tr>
358 3c393400 Scott Ullrich
                <tr>
359
                  <td colspan="2" valign="top" height="16"></td>
360
                </tr>
361
                <tr>
362
                  <td colspan="2" valign="top" class="listtopic">FTP Helper</td>
363
                </tr>		
364
		<tr>
365
			<td width="22%" valign="top" class="vncell">FTP Helper</td>
366
			<td width="78%" class="vtable">
367 0135299b Scott Ullrich
				<input name="disableftpproxy" type="checkbox" id="disableftpproxy" value="yes" <?php if ($pconfig['disableftpproxy']) echo "checked"; ?> onclick="enable_change(false)" />
368 3c393400 Scott Ullrich
				<strong>Disable the userland FTP-Proxy application</strong>
369
				<br />
370
			</td>
371
		</tr>			
372 c435798f Scott Ullrich
				<?php /* Wireless interface? */
373
				if (isset($optcfg['wireless']))
374
					wireless_config_print();
375
				?>		
376 af539d78 Scott Ullrich
                <tr>
377
                  <td colspan="2" valign="top" height="16"></td>
378
                </tr>
379 99586fca Scott Ullrich
                <tr>
380
                  <td colspan="2" valign="top" class="listtopic">DHCP client configuration</td>
381
                </tr>
382
                <tr>
383
                  <td valign="top" class="vncell">Hostname</td>
384
                  <td class="vtable"> <input name="dhcphostname" type="text" class="formfld" id="dhcphostname" size="40" value="<?=htmlspecialchars($pconfig['dhcphostname']);?>">
385
                    <br>
386
                    The value in this field is sent as the DHCP client identifier
387
                    and hostname when requesting a DHCP lease. Some ISPs may require
388
                    this (for client identification).</td>
389
                </tr>
390
                <tr>
391
                  <td colspan="2" valign="top" height="16"></td>
392
                </tr>		
393 c1ec2c2f Scott Ullrich
		<tr>
394 5b237745 Scott Ullrich
                  <td width="22%" valign="top">&nbsp;</td>
395 03b92764 Scott Ullrich
                  <td width="78%">
396
                    <input name="index" type="hidden" value="<?=$index;?>">
397
				  <input name="Submit" type="submit" class="formbtn" value="Save" onclick="enable_change(true)">
398 5b237745 Scott Ullrich
                  </td>
399
                </tr>
400 03b92764 Scott Ullrich
                <tr>
401 5b237745 Scott Ullrich
                  <td width="22%" valign="top">&nbsp;</td>
402
                  <td width="78%"><span class="vexpl"><span class="red"><strong>Note:<br>
403 c55a8ab9 Holger Bauer
                    </strong></span>be sure to add <a href="firewall_rules.php">firewall rules</a> to permit traffic
404
                    through the interface. You also need firewall rules for an interface in
405
                    bridged mode as the firewall acts as a filtering bridge.</span></td>
406 5b237745 Scott Ullrich
                </tr>
407
              </table>
408
</form>
409
<script language="JavaScript">
410
<!--
411
enable_change(false);
412
//-->
413
</script>
414
<?php else: ?>
415
<p><strong>Optional <?=$index;?> has been disabled because there is no OPT<?=$index;?> interface.</strong></p>
416
<?php endif; ?>
417
<?php include("fend.inc"); ?>
418
</body>
419
</html>
420 e4e8c30f Scott Ullrich
421
<?php
422
if ($_POST) {
423
424
	if (!$input_errors) {
425 2e70a096 Scott Ullrich
		
426
		ob_flush();
427
		flush();
428
		sleep(1);		
429
		
430 e4e8c30f Scott Ullrich
		interfaces_optional_configure_if($index);
431 f8a059cb Scott Ullrich
432
		/* load graphing functions */
433
		enable_rrd_graphing();	
434 e4e8c30f Scott Ullrich
		
435
		/* sync filter configuration */
436
		filter_configure();
437
	}
438
}
439
?>