Webinterface-Bilder neu gemacht | IPAC-NG-Patches installiert | Berkeley-DB installiert

git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@77 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8
This commit is contained in:
ms
2006-03-06 14:30:36 +00:00
parent 56daf5bb46
commit c2b1581459
42 changed files with 10432 additions and 220 deletions

View File

@@ -74,7 +74,7 @@
* iana-etc-2.00
* ibod
* inetutils-1.4.2
* ipac-ng-1.28
* ipac-ng-1.31
* ipaddr-1.2
* iproute2-2.4.7-now-ss010824
* iptables-1.3.5

View File

@@ -1,124 +0,0 @@
Dateien IPCOP_v1_4_10_FINAL/config/cfgroot/general-functions.pl und ipfire-1.4.11/config/cfgroot/general-functions.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/config/cfgroot/header-menu.pl und ipfire-1.4.11/config/cfgroot/header-menu.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/config/cfgroot/proxy-acl und ipfire-1.4.11/config/cfgroot/proxy-acl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/config/etc/inittab und ipfire-1.4.11/config/etc/inittab sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/config/kernel/kernel.config.alpha und ipfire-1.4.11/config/kernel/kernel.config.alpha sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/config/kernel/kernel.config.i386 und ipfire-1.4.11/config/kernel/kernel.config.i386 sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/config/kernel/kernel.config.i386.installer und ipfire-1.4.11/config/kernel/kernel.config.i386.installer sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/config/kernel/kernel.config.i386.smp und ipfire-1.4.11/config/kernel/kernel.config.i386.smp sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/config/ssl/openssl.cnf und ipfire-1.4.11/config/ssl/openssl.cnf sind verschieden.
Nur in ipfire-1.4.11/doc: make.sh-usage.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/aliases.cgi und ipfire-1.4.11/html/cgi-bin/aliases.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/backup.cgi und ipfire-1.4.11/html/cgi-bin/backup.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/credits.cgi und ipfire-1.4.11/html/cgi-bin/credits.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/ddns.cgi und ipfire-1.4.11/html/cgi-bin/ddns.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/dhcp.cgi und ipfire-1.4.11/html/cgi-bin/dhcp.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/logs.cgi/log.dat und ipfire-1.4.11/html/cgi-bin/logs.cgi/log.dat sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/pppsetup.cgi und ipfire-1.4.11/html/cgi-bin/pppsetup.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/proxy.cgi und ipfire-1.4.11/html/cgi-bin/proxy.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/shutdown.cgi und ipfire-1.4.11/html/cgi-bin/shutdown.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/updates.cgi und ipfire-1.4.11/html/cgi-bin/updates.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/home/httpd/cgi-bin/vpnmain.cgi und ipfire-1.4.11/html/cgi-bin/vpnmain.cgi sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/bz/install/lang_bz.c und ipfire-1.4.11/langs/bz/install/lang_bz.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/cs/install/lang_cs.c und ipfire-1.4.11/langs/cs/install/lang_cs.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/da/cgi-bin/da.pl und ipfire-1.4.11/langs/da/cgi-bin/da.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/da/install/lang_da.c und ipfire-1.4.11/langs/da/install/lang_da.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/de/cgi-bin/de.pl und ipfire-1.4.11/langs/de/cgi-bin/de.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/de/install/lang_de.c und ipfire-1.4.11/langs/de/install/lang_de.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/el/cgi-bin/el.pl und ipfire-1.4.11/langs/el/cgi-bin/el.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/el/install/lang_el.c und ipfire-1.4.11/langs/el/install/lang_el.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/en/cgi-bin/en.pl und ipfire-1.4.11/langs/en/cgi-bin/en.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/en/install/lang_en.c und ipfire-1.4.11/langs/en/install/lang_en.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/es/cgi-bin/es.pl und ipfire-1.4.11/langs/es/cgi-bin/es.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/es/install/lang_es.c und ipfire-1.4.11/langs/es/install/lang_es.c sind verschieden.
Nur in ipfire-1.4.11/langs: fa.
Dateien IPCOP_v1_4_10_FINAL/langs/fi/cgi-bin/fi.pl und ipfire-1.4.11/langs/fi/cgi-bin/fi.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/fi/install/lang_fi.c und ipfire-1.4.11/langs/fi/install/lang_fi.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/fr/cgi-bin/fr.pl und ipfire-1.4.11/langs/fr/cgi-bin/fr.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/fr/install/lang_fr.c und ipfire-1.4.11/langs/fr/install/lang_fr.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/hu/install/lang_hu.c und ipfire-1.4.11/langs/hu/install/lang_hu.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/it/install/lang_it.c und ipfire-1.4.11/langs/it/install/lang_it.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/la/install/lang_la.c und ipfire-1.4.11/langs/la/install/lang_la.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/list und ipfire-1.4.11/langs/list sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/nl/cgi-bin/nl.pl und ipfire-1.4.11/langs/nl/cgi-bin/nl.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/nl/install/lang_nl.c und ipfire-1.4.11/langs/nl/install/lang_nl.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/no/cgi-bin/no.pl und ipfire-1.4.11/langs/no/cgi-bin/no.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/no/install/lang_no.c und ipfire-1.4.11/langs/no/install/lang_no.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/pl/install/lang_pl.c und ipfire-1.4.11/langs/pl/install/lang_pl.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/pt/install/lang_pt.c und ipfire-1.4.11/langs/pt/install/lang_pt.c sind verschieden.
Nur in ipfire-1.4.11/langs: sk.
Dateien IPCOP_v1_4_10_FINAL/langs/so/install/lang_so.c und ipfire-1.4.11/langs/so/install/lang_so.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/sv/cgi-bin/sv.pl und ipfire-1.4.11/langs/sv/cgi-bin/sv.pl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/sv/install/lang_sv.c und ipfire-1.4.11/langs/sv/install/lang_sv.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/tr/install/lang_tr.c und ipfire-1.4.11/langs/tr/install/lang_tr.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/langs/vi/install/lang_vi.c und ipfire-1.4.11/langs/vi/install/lang_vi.c sind verschieden.
Nur in ipfire-1.4.11/lfs: as86.
Dateien IPCOP_v1_4_10_FINAL/lfs/boot.img und ipfire-1.4.11/lfs/boot.img sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/cdrom und ipfire-1.4.11/lfs/cdrom sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/Config und ipfire-1.4.11/lfs/Config sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/configroot und ipfire-1.4.11/lfs/configroot sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/coreutils und ipfire-1.4.11/lfs/coreutils sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/driver.img und ipfire-1.4.11/lfs/driver.img sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/eciadsl und ipfire-1.4.11/lfs/eciadsl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/gcc und ipfire-1.4.11/lfs/gcc sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/hdparm und ipfire-1.4.11/lfs/hdparm sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/iana-etc und ipfire-1.4.11/lfs/iana-etc sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/initrd und ipfire-1.4.11/lfs/initrd sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/installer und ipfire-1.4.11/lfs/installer sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/ipac-ng und ipfire-1.4.11/lfs/ipac-ng sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/iptables und ipfire-1.4.11/lfs/iptables sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/linux und ipfire-1.4.11/lfs/linux sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/man-pages und ipfire-1.4.11/lfs/man-pages sind verschieden.
Nur in ipfire-1.4.11/lfs: mbr.
Nur in ipfire-1.4.11/lfs: ndiswrapper.
Dateien IPCOP_v1_4_10_FINAL/lfs/openssl und ipfire-1.4.11/lfs/openssl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/openswan und ipfire-1.4.11/lfs/openswan sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/rrdtool und ipfire-1.4.11/lfs/rrdtool sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/scsi.img und ipfire-1.4.11/lfs/scsi.img sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/setup und ipfire-1.4.11/lfs/setup sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/stage2 und ipfire-1.4.11/lfs/stage2 sind verschieden.
Nur in ipfire-1.4.11/lfs: strip.
Dateien IPCOP_v1_4_10_FINAL/lfs/tar und ipfire-1.4.11/lfs/tar sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/tcl und ipfire-1.4.11/lfs/tcl sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/util-linux und ipfire-1.4.11/lfs/util-linux sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/vlan und ipfire-1.4.11/lfs/vlan sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/lfs/wireless und ipfire-1.4.11/lfs/wireless sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/make.sh und ipfire-1.4.11/make.sh sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/install/config.c und ipfire-1.4.11/src/install+setup/install/config.c sind verschieden.
Nur in ipfire-1.4.11/src/install+setup/install: install2.c.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/install/install.h und ipfire-1.4.11/src/install+setup/install/install.h sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/install/main.c und ipfire-1.4.11/src/install+setup/install/main.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/install/Makefile und ipfire-1.4.11/src/install+setup/install/Makefile sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/install/nic.c und ipfire-1.4.11/src/install+setup/install/nic.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/install/pcmcia.c und ipfire-1.4.11/src/install+setup/install/pcmcia.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/install/scsi.c und ipfire-1.4.11/src/install+setup/install/scsi.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/install/usb.c und ipfire-1.4.11/src/install+setup/install/usb.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/libsmooth/main.c und ipfire-1.4.11/src/install+setup/libsmooth/main.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/libsmooth/Makefile und ipfire-1.4.11/src/install+setup/libsmooth/Makefile sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/setup/main.c und ipfire-1.4.11/src/install+setup/setup/main.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/install+setup/setup/networking.c und ipfire-1.4.11/src/install+setup/setup/networking.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/misc-progs/ipcopbackup.c und ipfire-1.4.11/src/misc-progs/ipcopbackup.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/misc-progs/ipcopbkcfg.c und ipfire-1.4.11/src/misc-progs/ipcopbkcfg.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/misc-progs/ipcoprscfg.c und ipfire-1.4.11/src/misc-progs/ipcoprscfg.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/misc-progs/Makefile und ipfire-1.4.11/src/misc-progs/Makefile sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/misc-progs/setfilters.c und ipfire-1.4.11/src/misc-progs/setfilters.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/misc-progs/setuid.c und ipfire-1.4.11/src/misc-progs/setuid.c sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/misc-progs/setuid.h und ipfire-1.4.11/src/misc-progs/setuid.h sind verschieden.
Nur in ipfire-1.4.11/src/patches: ipac-ng-1.31-fetchcounter.patch.
Nur in ipfire-1.4.11/src/patches: ipac-ng-1.31-iptables-1.3.1.patch.
Nur in ipfire-1.4.11/src/patches: iptables-1.3.4-old-string.patch.
Nur in ipfire-1.4.11/src/patches: linux-2.4-seg-4.patch.
Dateien IPCOP_v1_4_10_FINAL/src/patches/patch-o-matic-ng-20040621_nf-log_2.4.29.patch und ipfire-1.4.11/src/patches/patch-o-matic-ng-20040621_nf-log_2.4.29.patch sind verschieden.
Nur in IPCOP_v1_4_10_FINAL/src/patches: pomng.fix.
Nur in ipfire-1.4.11/src/patches: pom-ng_proc-net-conntrack-permissions.patch.
Dateien IPCOP_v1_4_10_FINAL/etc/rc.d/rc.firewall und ipfire-1.4.11/src/rc.d/rc.firewall sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/etc/rc.d/rc.red und ipfire-1.4.11/src/rc.d/rc.red sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/etc/rc.d/rc.sysinit und ipfire-1.4.11/src/rc.d/rc.sysinit sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/etc/rc.d/rc.updatered und ipfire-1.4.11/src/rc.d/rc.updatered sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/ROOTFILES.alpha und ipfire-1.4.11/src/ROOTFILES.alpha sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/ROOTFILES.i386 und ipfire-1.4.11/src/ROOTFILES.i386 sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/scripts/httpscert und ipfire-1.4.11/src/scripts/httpscert sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/scripts/makegraphs und ipfire-1.4.11/src/scripts/makegraphs sind verschieden.
Dateien IPCOP_v1_4_10_FINAL/src/scripts/setddns.pl und ipfire-1.4.11/src/scripts/setddns.pl sind verschieden.
Nur in ipfire-1.4.11/src/scripts: upgrade.
Nur in ipfire-1.4.11/updates: 1.4.11.

View File

@@ -4,7 +4,9 @@
#
# (c) 2003 Dave Roberts <countzerouk@hotmail.com> - colour coded netfilter/iptables rewrite for 1.3
#
# $Id: connections.cgi,v 1.6.2.11 2005/02/24 07:44:35 gespinasse Exp $
# (c) 2006 Franck - add sorting+filtering capability
#
# $Id: connections.cgi,v 1.6.2.12 2006/02/27 19:48:46 franck78 Exp $
#
# Setup GREEN, ORANGE, IPCOP, VPN CIDR networks, masklengths and colours only once
@@ -39,7 +41,8 @@ my @active = <ACTIVE>;
close (ACTIVE);
my @vpn = ('none');
open (ACTIVE, "/proc/net/ipsec_eroute") and @vpn = <ACTIVE>; close (ACTIVE);
open (ACTIVE, "/proc/net/ipsec_eroute") and @vpn = <ACTIVE>;
close (ACTIVE);
my $aliasfile = "${General::swroot}/ethernet/aliases";
open(ALIASES, $aliasfile) or die 'Unable to open aliases file.';
@@ -140,42 +143,37 @@ if (open(IP, "${General::swroot}/red/local-ipaddress")) {
push(@colour, ${Header::colourfw} );
}
&Header::showhttpheaders();
&Header::openpage($Lang::tr{'connections'}, 1, '');
&Header::openbigbox('100%', 'left');
&Header::openbox('100%', 'left', $Lang::tr{'connection tracking'});
print <<END
<table width='60%'>
<tr><td align='center'><b>$Lang::tr{'legend'} : </b></td>
<td align='center' bgcolor='${Header::colourgreen}'><b><font color='#FFFFFF'>$Lang::tr{'lan'}</font></b></td>
<td align='center' bgcolor='${Header::colourred}'><b><font color='#FFFFFF'>$Lang::tr{'internet'}</font></b></td>
<td align='center' bgcolor='${Header::colourorange}'><b><font color='#FFFFFF'>$Lang::tr{'dmz'}</font></b></td>
<td align='center' bgcolor='${Header::colourblue}'><b><font color='#FFFFFF'>$Lang::tr{'wireless'}</font></b></td>
<td align='center' bgcolor='${Header::colourfw}'><b><font color='#FFFFFF'>IPCop</font></b></td>
<td align='center' bgcolor='${Header::colourvpn}'><b><font color='#FFFFFF'>$Lang::tr{'vpn'}</font></b></td>
</tr>
</table>
<br />
<table cellpadding='2'>
<tr><td align='center'><b>$Lang::tr{'protocol'}</b></td>
<td align='center'><b>$Lang::tr{'expires'}<br />($Lang::tr{'seconds'})</b></td>
<td align='center'><b>$Lang::tr{'connection'}<br />$Lang::tr{'status'}</b></td>
<td align='center'><b>$Lang::tr{'original'}<br />$Lang::tr{'source ip and port'}</b></td>
<td align='center'><b>$Lang::tr{'original'}<br />$Lang::tr{'dest ip and port'}</b></td>
<td align='center'><b>$Lang::tr{'expected'}<br />$Lang::tr{'source ip and port'}</b></td>
<td align='center'><b>$Lang::tr{'expected'}<br />$Lang::tr{'dest ip and port'}</b></td>
<td align='center'><b>$Lang::tr{'marked'}</b></td>
<td align='center'><b>$Lang::tr{'use'}</b></td>
</tr>
END
;
#Establish simple filtering&sorting boxes on top of table
foreach my $line (@active)
{
our %cgiparams;
&Header::getcgihash(\%cgiparams);
my @list_proto = ($Lang::tr{'all'}, 'icmp', 'udp', 'tcp');
my @list_state = ($Lang::tr{'all'}, 'SYN_SENT', 'SYN_RECV', 'ESTABLISHED', 'FIN_WAIT',
'CLOSE_WAIT', 'LAST_ACK', 'TIME_WAIT', 'CLOSE', 'LISTEN');
my @list_mark = ($Lang::tr{'all'}, '[ASSURED]', '[UNREPLIED]');
my @list_sort = ('orgsip','protocol', 'expires', 'status', 'orgdip', 'orgsp',
'orgdp', 'exsip', 'exdip', 'exsp', 'exdp');
# init or silently correct unknown value...
if ( ! grep ( /^$cgiparams{'SEE_PROTO'}$/ , @list_proto )) { $cgiparams{'SEE_PROTO'} = $list_proto[0] };
if ( ! grep ( /^$cgiparams{'SEE_STATE'}$/ , @list_state )) { $cgiparams{'SEE_STATE'} = $list_state[0] };
if ( ! grep ( /^$cgiparams{'SEE_MARK'}$/ , @list_mark )) { $cgiparams{'SEE_MARK'} = $list_mark[0] };
if ( ! grep ( /^$cgiparams{'SEE_SORT'}$/ , @list_sort )) { $cgiparams{'SEE_SORT'} = $list_sort[0] };
# *.*.*.* or a valid IP
if ( $cgiparams{'SEE_SRC'} !~ /^(\*\.\*\.\*\.\*\.|\d+\.\d+\.\d+\.\d+)$/) { $cgiparams{'SEE_SRC'} = '*.*.*.*' };
if ( $cgiparams{'SEE_DEST'} !~ /^(\*\.\*\.\*\.\*\.|\d+\.\d+\.\d+\.\d+)$/) { $cgiparams{'SEE_DEST'} = '*.*.*.*' };
our %entries = (); # will hold the lines analyzed correctly
my $unknownlines = ''; # should be empty all the time...
my $index = 0; # just a counter to make unique entryies in entries
foreach my $line (@active) {
my $protocol='';
my $expires='';
my $connstatus='';
my $status='';
my $orgsip='';
my $orgdip='';
my $orgsp='';
@@ -186,56 +184,93 @@ foreach my $line (@active)
my $exdp='';
my $marked='';
my $use='';
my $orgsipcolour='';
my $orgdipcolour='';
my $exsipcolour='';
my $exdipcolour='';
chomp($line);
my @temp = split(' ',$line);
print "<tr bgcolor='${Header::table1colour}'>\n";
if ($temp[0] eq 'icmp') {
$protocol = $temp[0];
$status = $Lang::tr{'all'};
$orgsip = substr $temp[3], 4;
$orgdip = substr $temp[4], 4;
$marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : ' ';
}
if ($temp[0] eq 'udp') {
$protocol = $temp[0];
$status = $Lang::tr{'all'};
$orgsip = substr $temp[3], 4;
$orgdip = substr $temp[4], 4;
$marked = $temp[7] eq '[UNREPLIED]' ? '[UNREPLIED]' : defined ($temp[12]) ? $temp[11] : ' ';
}
if ($temp[0] eq 'tcp') {
$protocol = $temp[0];
$status = $temp[3];
$orgsip = substr $temp[4], 4;
$orgdip = substr $temp[5], 4;
$marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : defined ($temp[13]) ? $temp[12] : ' ';
}
# filter the line if we found a known proto
next if( !(
(($cgiparams{'SEE_PROTO'} eq $Lang::tr{'all'}) || ($protocol eq $cgiparams{'SEE_PROTO'} ))
&& (($cgiparams{'SEE_STATE'} eq $Lang::tr{'all'}) || ($status eq $cgiparams{'SEE_STATE'} ))
&& (($cgiparams{'SEE_MARK'} eq $Lang::tr{'all'}) || ($marked eq $cgiparams{'SEE_MARK'} ))
&& (($cgiparams{'SEE_SRC'} eq "*.*.*.*") || ($orgsip eq $cgiparams{'SEE_SRC'} ))
&& (($cgiparams{'SEE_DEST'} eq "*.*.*.*") || ($orgdip eq $cgiparams{'SEE_DEST'} ))
));
if ($temp[0] eq 'icmp') {
my $offset = 0;
$protocol = $temp[0] . " (" . $temp[1] . ")";
$expires = $temp[2];
$status = ' ';
if ($temp[8] eq '[UNREPLIED]' ) {
$offset = +1;
}
$orgsip = substr $temp[3], 4;
$orgdip = substr $temp[4], 4;
$orgsp = &General::GetIcmpDescription(substr( $temp[5], 5)) . "/" . substr( $temp[6], 5);;
$orgdp = 'id=' . substr( $temp[7], 3);
$exsip = substr $temp[8 + $offset], 4;
$exdip = substr $temp[9 + $offset], 4;
$exsp = &General::GetIcmpDescription(substr( $temp[10 + $offset], 5)). "/" . substr( $temp[11 + $offset], 5);
$exdp = 'id=' . substr( $temp[11 + $offset], 5);
$marked = $temp[8] eq '[UNREPLIED]' ? '[UNREPLIED]' : ' ';
$use = substr( $temp[13 + $offset], 4 );
}
if ($temp[0] eq 'udp') {
my $offset = 0;
$marked = '';
$protocol = $temp[0] . " (" . $temp[1] . ")";
$expires = $temp[2];
$connstatus = ' ';
$status = ' ';
$orgsip = substr $temp[3], 4;
$orgdip = substr $temp[4], 4;
$orgsp = substr $temp[5], 6;
$orgdp = substr $temp[6], 6;
if ($temp[7] eq '[UNREPLIED]') {
$marked = $temp[7];
$offset = 1;
}
else {
$connstatus = ' ';
}
$offset = 1;
$marked = $temp[7];
$use = substr $temp[12], 4;
} else {
if ((substr $temp[11], 0, 3) eq 'use' ) {
$marked = '';
$use = substr $temp[11], 4;
} else {
$marked = $temp[11];
$use = substr $temp[12], 4;
}
}
$exsip = substr $temp[7 + $offset], 4;
$exdip = substr $temp[8 + $offset], 4;
$exsp = substr $temp[9 + $offset], 6;
$exdp = substr $temp[10 + $offset], 6;
if ($marked eq '[UNREPLIED]') {
$use = substr $temp[11 + $offset], 4;
}
else {
$marked = $temp[11 + $offset];
$use = substr $marked, 0, 3;
if ($use eq 'use' ) {
$marked = '';
$use = substr $temp[11 + $offset], 4;
}
else {
$use = substr $temp[12 + $offset], 4;
}
}
}
if ($temp[0] eq 'tcp') {
my $offset = 0;
$protocol = $temp[0] . " (" . $temp[1] . ")";
$expires = $temp[2];
$connstatus = $temp[3];
$status = $temp[3];
$orgsip = substr $temp[4], 4;
$orgdip = substr $temp[5], 4;
$orgsp = substr $temp[6], 6;
@@ -243,25 +278,22 @@ foreach my $line (@active)
if ($temp[8] eq '[UNREPLIED]') {
$marked = $temp[8];
$offset = 1;
$use = substr $temp[13], 4;
}
else {
} else {
$marked = $temp[12];
$use = substr $temp[13], 4;
}
$exsip = substr $temp[8 + $offset], 4;
$exdip = substr $temp[9 + $offset], 4;
$exsp = substr $temp[10 + $offset], 6;
$exdp = substr $temp[11 + $offset], 6;
$use = substr $temp[13], 4;
}
if ($temp[0] eq 'unknown') {
my $offset = 0;
$protocol = "??? (" . $temp[1] . ")";
$protocol = "esp (" . $temp[1] . ")" if ($temp[1] == 50);
$protocol = " ah (" . $temp[1] . ")" if ($temp[1] == 51);
$protocol = "ah (" . $temp[1] . ")" if ($temp[1] == 51);
$expires = $temp[2];
$connstatus = ' ';
$status = ' ';
$orgsip = substr $temp[3], 4;
$orgdip = substr $temp[4], 4;
$orgsp = ' ';
@@ -288,24 +320,119 @@ foreach my $line (@active)
$marked = $temp[17];
$use = $temp[18];
}
$orgsipcolour = &ipcolour($orgsip);
$orgdipcolour = &ipcolour($orgdip);
$exsipcolour = &ipcolour($exsip);
$exdipcolour = &ipcolour($exdip);
# Only from this point, lines have the same known format/field
# The floating fields [UNREPLIED] [ASSURED] etc are ok.
# Store the line in a hash array for sorting
if ( $protocol ) { # line is decoded ?
my @record = ( 'index', $index++,
'protocol', $protocol,
'expires', $expires,
'status', $status,
'orgsip', $orgsip,
'orgdip', $orgdip,
'orgsp', $orgsp,
'orgdp', $orgdp,
'exsip', $exsip,
'exdip', $exdip,
'exsp', $exsp,
'exdp', $exdp,
'marked', $marked,
'use', $use);
my $record = {}; # create a reference to empty hash
%{$record} = @record; # populate that hash with @record
$entries{$record->{index}} = $record; # add this to a hash of hashes
} else { # it was not a known line
$unknownlines .= "<tr bgcolor='${Header::table1colour}'>";
$unknownlines .= "<td colspan='9'> unknown:$line></td></tr>";
}
}
# Build listbox objects
my $menu_proto = &make_select ('SEE_PROTO', $cgiparams{'SEE_PROTO'}, @list_proto);
my $menu_state = &make_select ('SEE_STATE', $cgiparams{'SEE_STATE'}, @list_state);
my $menu_src = &make_select ('SEE_SRC', $cgiparams{'SEE_SRC'}, &get_known_ips('orgsip'));
my $menu_dest = &make_select ('SEE_DEST', $cgiparams{'SEE_DEST'}, &get_known_ips('orgdip'));
my $menu_mark = &make_select ('SEE_MARK', $cgiparams{'SEE_MARK'}, @list_mark);
my $menu_sort = &make_select ('SEE_SORT', $cgiparams{'SEE_SORT'}, @list_sort);
&Header::showhttpheaders();
&Header::openpage($Lang::tr{'connections'}, 1, '');
&Header::openbigbox('100%', 'left');
&Header::openbox('100%', 'left', $Lang::tr{'connection tracking'});
print <<END
<table width='60%'>
<tr><td align='center'><b>$Lang::tr{'legend'} : </b></td>
<td align='center' bgcolor='${Header::colourgreen}'><b><font color='#FFFFFF'>$Lang::tr{'lan'}</font></b></td>
<td align='center' bgcolor='${Header::colourred}'><b><font color='#FFFFFF'>$Lang::tr{'internet'}</font></b></td>
<td align='center' bgcolor='${Header::colourorange}'><b><font color='#FFFFFF'>$Lang::tr{'dmz'}</font></b></td>
<td align='center' bgcolor='${Header::colourblue}'><b><font color='#FFFFFF'>$Lang::tr{'wireless'}</font></b></td>
<td align='center' bgcolor='${Header::colourfw}'><b><font color='#FFFFFF'>IPCop</font></b></td>
<td align='center' bgcolor='${Header::colourvpn}'><b><font color='#FFFFFF'>$Lang::tr{'vpn'}</font></b></td>
</tr>
</table>
<br />
<table cellpadding='2'>
<tr><td align='center'><b>$Lang::tr{'protocol'}</b></td>
<td align='center'><b>$Lang::tr{'expires'}<br />($Lang::tr{'seconds'})</b></td>
<td align='center'><b>$Lang::tr{'connection'}<br />$Lang::tr{'status'}</b></td>
<td align='center'><b>$Lang::tr{'original'}<br />$Lang::tr{'source ip and port'}</b></td>
<td align='center'><b>$Lang::tr{'original'}<br />$Lang::tr{'dest ip and port'}</b></td>
<td align='center'><b>$Lang::tr{'expected'}<br />$Lang::tr{'source ip and port'}</b></td>
<td align='center'><b>$Lang::tr{'expected'}<br />$Lang::tr{'dest ip and port'}</b></td>
<td align='center'><b>$Lang::tr{'marked'}</b></td>
<td align='center'><b>$Lang::tr{'use'}</b></td>
</tr>
<tr><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<td align='center'>$menu_proto</td>
<td></td>
<td align='center'>$menu_state</td>
<td align='center'>$menu_src</td>
<td align='center'>$menu_dest</td>
<td align='center'colspan='2'>$Lang::tr{'sort ascending'}:$menu_sort </td>
<td align='center'>$menu_mark</td>
<td align='center'><input type='submit' value='!' /></td>
</form>
</tr>
END
;
foreach my $entry (sort sort_entries keys %entries) {
print "<tr bgcolor='${Header::table1colour}'>";
my $orgsipcolour = &ipcolour( $entries{$entry}->{orgsip} );
my $orgdipcolour = &ipcolour( $entries{$entry}->{orgdip} );
my $exsipcolour = &ipcolour( $entries{$entry}->{exsip} );
my $exdipcolour = &ipcolour( $entries{$entry}->{exdip} );
print <<END
<td align='center'>$protocol</td>
<td align='center'>$expires</td>
<td align='center'>$connstatus</td>
<td align='center' bgcolor='$orgsipcolour'><a href='/cgi-bin/ipinfo.cgi?ip=$orgsip'><font color='#FFFFFF'>$orgsip</font></a><font color='#FFFFFF'>:$orgsp</font></td>
<td align='center' bgcolor='$orgdipcolour'><a href='/cgi-bin/ipinfo.cgi?ip=$orgdip'><font color='#FFFFFF'>$orgdip</font></a><font color='#FFFFFF'>:$orgdp</font></td>
<td align='center' bgcolor='$exsipcolour'><a href='/cgi-bin/ipinfo.cgi?ip=$exsip'><font color='#FFFFFF'>$exsip</font></a><font color='#FFFFFF'>:$exsp</font></td>
<td align='center' bgcolor='$exdipcolour'><a href='/cgi-bin/ipinfo.cgi?ip=$exdip'><font color='#FFFFFF'>$exdip</font></a><font color='#FFFFFF'>:$exdp</font></td>
<td align='center'>$marked</td><td align='center'>$use</td>
<td align='center'>$entries{$entry}->{protocol}</td>
<td align='center'>$entries{$entry}->{expires}</td>
<td align='center'>$entries{$entry}->{status}</td>
<td align='center' bgcolor='$orgsipcolour'>
<a href='/cgi-bin/ipinfo.cgi?ip=$entries{$entry}->{orgsip}'>
<font color='#FFFFFF'>$entries{$entry}->{orgsip}</font>
</a><font color='#FFFFFF'>:$entries{$entry}->{orgsp}</font></td>
<td align='center' bgcolor='$orgdipcolour'>
<a href='/cgi-bin/ipinfo.cgi?ip=$entries{$entry}->{orgdip}'>
<font color='#FFFFFF'>$entries{$entry}->{orgdip}</font>
</a><font color='#FFFFFF'>:$entries{$entry}->{orgdp}</font></td>
<td align='center' bgcolor='$exsipcolour'>
<a href='/cgi-bin/ipinfo.cgi?ip=$entries{$entry}->{exsip}'>
<font color='#FFFFFF'>$entries{$entry}->{exsip}</font>
</a><font color='#FFFFFF'>:$entries{$entry}->{exsp}</font></td>
<td align='center' bgcolor='$exdipcolour'>
<a href='/cgi-bin/ipinfo.cgi?ip=$entries{$entry}->{exdip}'>
<font color='#FFFFFF'>$entries{$entry}->{exdip}</font>
</a><font color='#FFFFFF'>:$entries{$entry}->{exdp}</font></td>
<td align='center'>$entries{$entry}->{marked}</td>
<td align='center'>$entries{$entry}->{use}</td>
</tr>
END
;
;
}
print "</table>\n";
print "$unknownlines</table>";
&Header::closebox();
&Header::closebigbox();
@@ -316,10 +443,9 @@ sub ipcolour($) {
my $line;
my $colour = ${Header::colourred};
my ($ip) = $_[0];
my $found = 0;
foreach $line (@network)
{
if (!$found && ipv4_in_network( $network[$id] , $masklen[$id], $ip) ) {
my $found = 0;
foreach $line (@network) {
if (!$found && ipv4_in_network( $network[$id] , $masklen[$id], $ip) ) {
$found = 1;
$colour = $colour[$id];
}
@@ -327,3 +453,55 @@ sub ipcolour($) {
}
return $colour
}
# Create a string containing a complete SELECT html object
# param1: name
# param2: current value selected
# param3: field list
sub make_select ($,$,$) {
my $select_name = shift;
my $selected = shift;
my $select = "<select name='$select_name'>";
foreach my $value (@_) {
my $check = $selected eq $value ? "selected='selected'" : '';
$select .= "<option $check value='$value'>$value";
}
$select .= "</select>";
return $select;
}
# Build a list of IP obtained from the %entries hash
# param1: IP field name
sub get_known_ips ($) {
my $field = shift;
my $qs = $cgiparams{'SEE_SORT'}; # switch the sort order
$cgiparams{'SEE_SORT'} = $field;
my @liste=('*.*.*.*');
foreach my $entry ( sort sort_entries keys %entries) {
push (@liste, $entries{$entry}->{$field}) if (! grep (/^$entries{$entry}->{$field}$/,@liste) );
}
$cgiparams{'SEE_SORT'} = $qs; #restore sort order
return @liste;
}
# Used to sort the table containing the lines displayed.
sub sort_entries { #Reverse is not implemented
my $qs=$cgiparams{'SEE_SORT'};
if ($qs =~ /orgsip|orgdip|exsip|exdip/) {
my @a = split(/\./,$entries{$a}->{$qs});
my @b = split(/\./,$entries{$b}->{$qs});
($a[0]<=>$b[0]) ||
($a[1]<=>$b[1]) ||
($a[2]<=>$b[2]) ||
($a[3]<=>$b[3]);
} elsif ($qs =~ /expire|orgsp|orgdp|exsp|exdp/) {
$entries{$a}->{$qs} <=> $entries{$b}->{$qs};
} else {
$entries{$a}->{$qs} cmp $entries{$b}->{$qs};
}
}
1;

Binary file not shown.

After

Width:  |  Height:  |  Size: 1022 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 355 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 B

After

Width:  |  Height:  |  Size: 122 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 294 B

After

Width:  |  Height:  |  Size: 346 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 B

After

Width:  |  Height:  |  Size: 112 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 B

After

Width:  |  Height:  |  Size: 118 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 331 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 387 B

After

Width:  |  Height:  |  Size: 119 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 374 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 B

After

Width:  |  Height:  |  Size: 609 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
html/html/images/help.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
html/html/images/logout.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 667 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 866 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 356 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 B

BIN
html/html/images/sflogo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 401 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 672 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -120,7 +120,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
# Copy all html/cgi-bin files
cp -aR $(DIR_SRC)/html/* /home/httpd
-find /home/httpd -name CVS -exec rm -rf {} \;
-find /home/httpd -name .svn -exec rm -rf {} \;
cp $(DIR_DL)/sflogo.png /home/httpd/html/images/
# Change CONFIG_ROOT in cgi-scripts

View File

@@ -78,7 +78,7 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP)/build_unix && ../dist/configure --prefix=/usr/local/db-4.4
cd $(DIR_APP)/build_unix && ../dist/configure --prefix=/usr
cd $(DIR_APP)/build_unix && make
cd $(DIR_APP)/build_unix && make install
@rm -rf $(DIR_APP)

View File

@@ -58,7 +58,7 @@ $(TARGET) :
# Create all directories
for i in addon-lang alcatelusb auth backup backup/sets ca certs cnx_pci crls ddns dhcp dhcpc dmzholes \
eagle-usb eciadsl ethernet isdn key langs logging main modem optionsfw patches portfw \
ppp private proxy red remote shaping snort time vpn wireless xtaccess ; do \
ppp private proxy red remote shaping snort time uplinks vpn wireless xtaccess ; do \
mkdir -p $(CONFIG_ROOT)/$$i; \
done

View File

@@ -22,7 +22,7 @@
# ??-12-2003 Mark Wormgoor < mark@wormgoor.com> #
# - Modified Makefile for IPCop build #
# #
# $Id: ipac-ng,v 1.5.2.5 2005/02/05 15:38:15 gespinasse Exp $
# $Id: ipac-ng,v 1.5.2.6 2006/01/14 16:41:15 gespinasse Exp $
# #
###############################################################################
@@ -32,12 +32,12 @@
include Config
VER = 1.28
VER = 1.31
THISAPP = ipac-ng-$(VER)
DL_FILE = $(THISAPP).tar.gz
DL_FROM = $(URL_SFNET)/ipac-ng
DIR_APP = $(DIR_SRC)/ipac-ng-1.28
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
###############################################################################
@@ -48,7 +48,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
$(DL_FILE)_MD5 = fc3c701ec20baa36a2865860f97fd03b
$(DL_FILE)_MD5 = 0c010550adfc140bb3990eb02f1604d0
install : $(TARGET)
@@ -78,6 +78,8 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-iptables-1.3.1.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-fetchcounter.patch
cd $(DIR_APP) && sed -i -e 's%/var/lib/ipac%/var/log/ip-acct%g' configure
cd $(DIR_APP) && chmod 755 configure
cd $(DIR_APP) && ./configure --prefix=/usr --disable-nls --enable-default-storage=gdbm

View File

@@ -693,7 +693,7 @@ buildpackages() {
cd $BASEDIR
fi
# Create update for this version
# Create update for this version
# echo "`date -u '+%b %e %T'`: Building update $VERSION tgz" | tee -a $LOGFILE
# tar -cz -C $BASEDIR/build --files-from=$BASEDIR/updates/$VERSION/ROOTFILES.$MACHINE-$VERSION -f $BASEDIR/updates/$VERSION/patch.tar.gz --exclude='#*';
# chmod 755 $BASEDIR/updates/$VERSION/setup

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,11 @@
diff -ruw ipac-ng-1.31_iptables-1.3.1/agents/iptables/iptables.c ipac-ng-1.31/agents/iptables/iptables.c
--- ipac-ng-1.31_iptables-1.3.1/agents/iptables/iptables.c 2005-05-02 12:00:48.000000000 +0200
+++ ipac-ng-1.31/agents/iptables/iptables.c 2005-05-11 22:15:59.558139120 +0200
@@ -1144,6 +1144,7 @@
rule = new_rule();
chain = new_rule();
+ chain->pkts = 1;
strncpy(rule->name, cp+1, MAX_RULE_NAME_LENGTH);
strncpy(chain->name, nextline->line, cp-nextline->line);

File diff suppressed because it is too large Load Diff