]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/commitdiff
Merge branch 'master' of git://git.ipfire.org/ipfire-2.x
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 30 Sep 2008 10:24:18 +0000 (10:24 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 30 Sep 2008 10:24:18 +0000 (10:24 +0000)
71 files changed:
config/backup/backup.pl
config/cfgroot/graphs.pl
config/cfgroot/useragents
config/collectd/collectd.conf
config/cron/crontab
config/etc/fstab
config/grub/grub.conf
config/kernel/kernel25.config.i586 [new file with mode: 0644]
config/menu/20-status.menu
config/menu/EX-wlanap.menu
config/rootfiles/common/apache2
config/rootfiles/common/atl2-2.0.4 [new file with mode: 0644]
config/rootfiles/common/backup
config/rootfiles/common/cdrtools
config/rootfiles/common/initscripts
config/rootfiles/common/linux25 [new file with mode: 0644]
config/rootfiles/common/nagios-3.0 [new file with mode: 0644]
config/rootfiles/common/oldcore10
config/rootfiles/common/oldcore7
config/rootfiles/common/r8168-8.005.00 [new file with mode: 0644]
config/rootfiles/common/stage2
config/rootfiles/common/v4l-dvb-e9a442d3b53a [new file with mode: 0644]
config/rootfiles/core/17/files
config/rootfiles/packages/mpfire
config/rootfiles/packages/tcptrack
config/rootfiles/updater/filelists/files
config/rootfiles/updater/filelists/linux25 [new symlink]
config/rootfiles/updater/update.sh
config/syslinux/unattended.conf
doc/packages-list.txt
html/cgi-bin/backup.cgi
html/cgi-bin/credits.cgi
html/cgi-bin/ddns.cgi
html/cgi-bin/fwhits.cgi [deleted file]
html/cgi-bin/graphs.cgi [deleted file]
html/cgi-bin/hardwaregraphs.cgi
html/cgi-bin/ids.cgi
html/cgi-bin/media.cgi
html/cgi-bin/memory.cgi
html/cgi-bin/netexternal.cgi [new file with mode: 0755]
html/cgi-bin/netinternal.cgi [new file with mode: 0755]
html/cgi-bin/netother.cgi [moved from html/cgi-bin/proxygraphs.cgi with 55% similarity, mode: 0755]
html/cgi-bin/network.cgi [deleted file]
html/cgi-bin/ovpnmain.cgi
html/cgi-bin/qos.cgi
html/cgi-bin/qosgraph.cgi [deleted file]
html/cgi-bin/services.cgi
html/cgi-bin/system.cgi
html/cgi-bin/traffics.cgi [deleted file]
html/cgi-bin/urlfilter.cgi
langs/de/cgi-bin/de.pl
langs/en/cgi-bin/en.pl
lfs/alsa
lfs/atl2
lfs/directfb
lfs/hostapd
lfs/initrd
lfs/kqemu
lfs/linux-fusion [deleted file]
lfs/linux25 [new file with mode: 0644]
lfs/madwifi
lfs/v4l-dvb
make.sh
src/initscripts/init.d/collectd
src/install+setup/install/main.c
src/install+setup/install/unattended.c
src/patches/linux-2.6.25.17-ipp2p-0.8.2-pomng.patch [new file with mode: 0644]
src/scripts/backupiso [new file with mode: 0644]
src/scripts/makegraphs
src/scripts/qosd
src/scripts/setddns.pl

index 15dc0ac6ffe91dade3480d020ecd6994dcad6485..5633569fda217449790de58d1d0f6ee68577f9a0 100644 (file)
@@ -32,7 +32,7 @@ $Monatstag = sprintf("%02d", $Monatstag);
 $Stunden = sprintf("%02d", $Stunden);
 $Minuten = sprintf("%02d", $Minuten);
 
-if ($ARGV[0] eq 'include') {
+if (($ARGV[0] eq 'include') || ($ARGV[0] eq 'iso')) {
   &createinclude;
     my @files = `find / -name *.log* 2>/dev/null`;
     foreach (@files){
@@ -48,6 +48,9 @@ if ($ARGV[0] eq 'include') {
   close(DATEI);
   system("tar -cvzf /var/ipfire/backup/$Jahr$Monat$Monatstag-$Stunden$Minuten.ipf --files-from='/tmp/include' --exclude-from='/var/ipfire/backup/exclude'");
   system("rm /tmp/include");
+  if ($ARGV[0] eq 'iso') {
+       system("/usr/local/bin/backupiso $Jahr$Monat$Monatstag-$Stunden$Minuten &");
+  }
 }
 elsif ($ARGV[0] eq 'exclude') {
   &createinclude;
index 7e6ee25cf02ca35dbfb66d41bb7b9eff6e45bc62..9e7f79f4ce6c732aca25b65a00080402300e02c0 100644 (file)
@@ -1,7 +1,24 @@
 #!/usr/bin/perl
 # Generate Graphs exported from Makegraphs to minimize system load an only generate the Graphs when displayed
-# This is part of the IPFire Firewall
-
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
 
 package Graphs;
 
@@ -13,9 +30,6 @@ require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
 my $ERROR;
-my $rrdlog = "/var/log/rrd";
-my $graphs = "/srv/web/ipfire/html/graphs";
-$ENV{PATH}="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";
 
 # Read the global settings files to get the current theme and after this load
 # colors for this theme
@@ -26,22 +40,21 @@ my %sensorsettings = ();
 &General::readhash("${General::swroot}/main/settings", \%mainsettings);
 &General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
 
+if ( $mainsettings{'RRDLOG'} eq "" ){
+       $mainsettings{'RRDLOG'}="/var/log/rrd";
+       &General::writehash("${General::swroot}/main/settings", \%mainsettings);
+}
 
 # If the collection deamon is working and collecting lm_sensors data there will be
 # some data source named after a common scheme, with the sensorssettingsfile
 # the user is able to deactivate some of this parameters, in case not to show
-# false collected value´s may be disable. The user has the ability to ente
-# custom graph names in order to change temp0 to cpu or motherboad
+# false collected values may be disable. The user has the ability to enter
+# custom graph names in order to change temp0 to cpu or motherboard
 
-my $key;
-my $value;
-my @args = ();
 my $count = 0;
 my @sensorsgraphs = ();
-my @processesgraph = `ls -dA $rrdlog/collectd/localhost/processes-*/`;
-my @sensorsdir = `ls -dA $rrdlog/collectd/localhost/sensors-*/`;
-foreach (@sensorsdir)
-{
+my @sensorsdir = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/sensors-*/`;
+foreach (@sensorsdir){
        chomp($_);chop($_);
        foreach (`ls $_/*`){
                chomp($_);
@@ -54,753 +67,990 @@ foreach (@sensorsdir)
 }
 
 &General::readhash("${General::swroot}/sensors/settings", \%sensorsettings);
-use Encode 'from_to';
-
-my %tr=();
-if ((${Lang::language} eq 'el') ||
-    (${Lang::language} eq 'fa') ||
-    (${Lang::language} eq 'ru') ||
-    (${Lang::language} eq 'th') ||
-    (${Lang::language} eq 'vi') ||
-    (${Lang::language} eq 'zh') ||
-    (${Lang::language} eq 'zt')) {
-        eval `/bin/cat "${General::swroot}/langs/en.pl"`;
-} else {
-        %tr=%Lang::tr;          # use translated version for other languages
+
+# Generate a nice box for selection of time range in graphs
+# this will generate a nice iframe for the cgi every klick for
+# the graph will be handled inside the iframe
+# 0 is the cgi refering to
+# 1 is the graph name
+# 2 is the time range for the graph
+# 3 if given is the height of the iframe default if nothing is given
+
+sub makegraphbox {
+       my $height = 285;
+       my $width = 700;
+
+       if ( $_[3] ne "" ){ $height = $_[3]; }
+
+       print "<center>";
+       print "<a href='".$_[0]."?".$_[1]."?hour' target='".$_[1]."box'><b>".$Lang::tr{'hour'}."</b></a>";
+       print " - ";
+       print "<a href='".$_[0]."?".$_[1]."?day' target='".$_[1]."box'><b>".$Lang::tr{'day'}."</b></a>";
+       print " - ";
+       print "<a href='".$_[0]."?".$_[1]."?week' target='".$_[1]."box'><b>".$Lang::tr{'week'}."</b></a>";
+       print " - ";
+       print "<a href='".$_[0]."?".$_[1]."?month' target='".$_[1]."box'><b>".$Lang::tr{'month'}."</b></a>";
+       print " - ";
+       print "<a href='".$_[0]."?".$_[1]."?year' target='".$_[1]."box'><b>".$Lang::tr{'year'}."</b></a>";
+       print "<iframe src='".$_[0]."?".$_[1]."?".$_[2]."' width='".$width."' height='".$height."' scrolling='no' frameborder='no' marginheight='0' name='".$_[1]."box'></iframe>";
+       print "</center>";
 }
 
 # Generate the CPU Graph for the current period of time for values given by
-# collectd atm only cpu average is displayed and only 1 or 2 cpus is working
+# collectd we are now able to handle any kind of cpucount
 
 sub updatecpugraph {
-        my $period    = $_[0];
-                               my @command = ("$graphs/cpu-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org", "-v $Lang::tr{'percentage'}",
-        "--alt-y-grid", "-w 600", "-h 125", "-l 0", "-u 100", "-r",
-        "--color", "SHADEA".$color{"color19"},
-        "--color", "SHADEB".$color{"color19"},
-        "--color", "BACK".$color{"color21"},
-        "-t $Lang::tr{'cpu usage per'} $Lang::tr{$period}");
-
-        if ( -e "$rrdlog/collectd/localhost/cpu-1/" ){
-        push(@command,"DEF:iowait0=$rrdlog/collectd/localhost/cpu-0/cpu-wait.rrd:value:AVERAGE",
-                               "DEF:nice0=$rrdlog/collectd/localhost/cpu-0/cpu-nice.rrd:value:AVERAGE",
-                               "DEF:interrupt0=$rrdlog/collectd/localhost/cpu-0/cpu-interrupt.rrd:value:AVERAGE",
-                               "DEF:steal0=$rrdlog/collectd/localhost/cpu-0/cpu-steal.rrd:value:AVERAGE",
-                               "DEF:user0=$rrdlog/collectd/localhost/cpu-0/cpu-user.rrd:value:AVERAGE",
-                               "DEF:system0=$rrdlog/collectd/localhost/cpu-0/cpu-system.rrd:value:AVERAGE",
-                               "DEF:idle0=$rrdlog/collectd/localhost/cpu-0/cpu-idle.rrd:value:AVERAGE",
-                               "DEF:irq0=$rrdlog/collectd/localhost/cpu-0/cpu-softirq.rrd:value:AVERAGE");
-        push(@command,"DEF:iowait1=$rrdlog/collectd/localhost/cpu-1/cpu-wait.rrd:value:AVERAGE",
-                               "DEF:nice1=$rrdlog/collectd/localhost/cpu-1/cpu-nice.rrd:value:AVERAGE",
-                               "DEF:interrupt1=$rrdlog/collectd/localhost/cpu-1/cpu-interrupt.rrd:value:AVERAGE",
-                               "DEF:steal1=$rrdlog/collectd/localhost/cpu-1/cpu-steal.rrd:value:AVERAGE",
-                               "DEF:user1=$rrdlog/collectd/localhost/cpu-1/cpu-user.rrd:value:AVERAGE",
-                               "DEF:system1=$rrdlog/collectd/localhost/cpu-1/cpu-system.rrd:value:AVERAGE",
-                               "DEF:idle1=$rrdlog/collectd/localhost/cpu-1/cpu-idle.rrd:value:AVERAGE",
-                               "DEF:irq1=$rrdlog/collectd/localhost/cpu-1/cpu-softirq.rrd:value:AVERAGE");
-        push(@command,"CDEF:user=user0,user1,+",
-                               "CDEF:nice=nice0,nice1,+",
-                               "CDEF:interrupt=interrupt0,interrupt1,+",
-                               "CDEF:steal=steal0,steal1,+",
-                               "CDEF:system=system0,system1,+",
-                               "CDEF:idle=idle0,idle1,+",
-                               "CDEF:iowait=iowait0,iowait1,+",
-                               "CDEF:irq=irq0,irq1,+");
-                               }
-        else {
-        push(@command,"DEF:iowait=$rrdlog/collectd/localhost/cpu-0/cpu-wait.rrd:value:AVERAGE",
-                               "DEF:nice=$rrdlog/collectd/localhost/cpu-0/cpu-nice.rrd:value:AVERAGE",
-                               "DEF:interrupt=$rrdlog/collectd/localhost/cpu-0/cpu-interrupt.rrd:value:AVERAGE",
-                               "DEF:steal=$rrdlog/collectd/localhost/cpu-0/cpu-steal.rrd:value:AVERAGE",
-                               "DEF:user=$rrdlog/collectd/localhost/cpu-0/cpu-user.rrd:value:AVERAGE",
-                               "DEF:system=$rrdlog/collectd/localhost/cpu-0/cpu-system.rrd:value:AVERAGE",
-                               "DEF:idle=$rrdlog/collectd/localhost/cpu-0/cpu-idle.rrd:value:AVERAGE",
-                               "DEF:irq=$rrdlog/collectd/localhost/cpu-0/cpu-softirq.rrd:value:AVERAGE");
-                               }
-                               push(@command,"CDEF:total=user,system,idle,iowait,irq,nice,interrupt,steal,+,+,+,+,+,+,+",
-                               "CDEF:userpct=100,user,total,/,*",
-                               "CDEF:nicepct=100,nice,total,/,*",
-                               "CDEF:interruptpct=100,interrupt,total,/,*",
-                               "CDEF:stealpct=100,steal,total,/,*",
-                               "CDEF:systempct=100,system,total,/,*",
-                               "CDEF:idlepct=100,idle,total,/,*",
-                               "CDEF:iowaitpct=100,iowait,total,/,*",
-                               "CDEF:irqpct=100,irq,total,/,*",
-                               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
-        "AREA:iowaitpct".$color{"color14"}.":".sprintf("%-25s",$Lang::tr{'cpu iowait usage'}),
-        "GPRINT:iowaitpct:MAX:%3.2lf%%",
-        "GPRINT:iowaitpct:AVERAGE:%3.2lf%%",
-        "GPRINT:iowaitpct:MIN:%3.2lf%%",
-        "GPRINT:iowaitpct:LAST:%3.2lf%%\\j",
-        "STACK:irqpct".$color{"color23"}."A0:".sprintf("%-25s",$Lang::tr{'cpu irq usage'}),
-        "GPRINT:irqpct:MAX:%3.2lf%%",
-        "GPRINT:irqpct:AVERAGE:%3.2lf%%",
-        "GPRINT:irqpct:MIN:%3.2lf%%",
-        "GPRINT:irqpct:LAST:%3.2lf%%\\j",
-        "STACK:nicepct".$color{"color16"}."A0:".sprintf("%-25s",$Lang::tr{'cpu nice usage'}),
-        "GPRINT:nicepct:MAX:%3.2lf%%",
-        "GPRINT:nicepct:AVERAGE:%3.2lf%%",
-        "GPRINT:nicepct:MIN:%3.2lf%%",
-        "GPRINT:nicepct:LAST:%3.2lf%%\\j",
-        "STACK:interruptpct".$color{"color15"}."A0:".sprintf("%-25s",$Lang::tr{'cpu interrupt usage'}),
-        "GPRINT:interruptpct:MAX:%3.2lf%%",
-        "GPRINT:interruptpct:AVERAGE:%3.2lf%%",
-        "GPRINT:interruptpct:MIN:%3.2lf%%",
-        "GPRINT:interruptpct:LAST:%3.2lf%%\\j",
-        "STACK:stealpct".$color{"color18"}."A0:".sprintf("%-25s",$Lang::tr{'cpu steal usage'}),
-        "GPRINT:stealpct:MAX:%3.2lf%%",
-        "GPRINT:stealpct:AVERAGE:%3.2lf%%",
-        "GPRINT:stealpct:MIN:%3.2lf%%",
-        "GPRINT:stealpct:LAST:%3.2lf%%\\j",
-        "STACK:userpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'cpu user usage'}),
-        "GPRINT:userpct:MAX:%3.2lf%%",
-        "GPRINT:userpct:AVERAGE:%3.2lf%%",
-        "GPRINT:userpct:MIN:%3.2lf%%",
-        "GPRINT:userpct:LAST:%3.2lf%%\\j",
-        "STACK:systempct".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'cpu system usage'}),
-        "GPRINT:systempct:MAX:%3.2lf%%",
-        "GPRINT:systempct:AVERAGE:%3.2lf%%",
-        "GPRINT:systempct:MIN:%3.2lf%%",
-        "GPRINT:systempct:LAST:%3.2lf%%\\j",
-        "STACK:idlepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'cpu idle usage'}),
-        "GPRINT:idlepct:MAX:%3.2lf%%",
-        "GPRINT:idlepct:AVERAGE:%3.2lf%%",
-        "GPRINT:idlepct:MIN:%3.2lf%%",
-        "GPRINT:idlepct:LAST:%3.2lf%%\\j");
-
-                               RRDs::graph (@command);
-        $ERROR = RRDs::error;
-        print "Error in RRD::graph for cpu: $ERROR\n" if $ERROR;
-}
-
-# Generate the CPU Frequency Graph for the current period of time for values given by
-# only 1 or 2 cpus is working
-sub updatecpufreqgraph {
-        if ( -e "$rrdlog/collectd/localhost/cpufreq/cpufreq-0.rrd" ){
-
-        my $period    = $_[0];
-       my @command = ("$graphs/cpufreq-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org", "-v Mhz",
-        "-w 600", "-h 125",  "-r",
-        "--color", "SHADEA".$color{"color19"},
-        "--color", "SHADEB".$color{"color19"},
-        "--color", "BACK".$color{"color21"},
-        "-t $Lang::tr{'cpu frequency per'} $Lang::tr{$period}");
-
-        if ( -e "$rrdlog/collectd/localhost/cpufreq/cpufreq-1.rrd" ){
-           push(@command,"DEF:cpu1_=$rrdlog/collectd/localhost/cpufreq/cpufreq-1.rrd:value:AVERAGE");
+       my $cpucount = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/cpu-*/ | wc -l`;
+       my $period    = $_[0];
+       my @command = (
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-l 0",
+               "-u 100",
+               "-r",
+               "-t ".$Lang::tr{'cpu usage per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'percentage'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j"
+       );
+       
+       my $nice = "CDEF:nice=";
+       my $interrupt = "CDEF:interrupt=";
+       my $steal = "CDEF:steal=";
+       my $user = "CDEF:user=";
+       my $system = "CDEF:system=";
+       my $idle = "CDEF:idle=";
+       my $iowait = "CDEF:iowait=";
+       my $irq = "CDEF:irq=";
+       my $addstring = "";
+       
+       for(my $i = 0; $i < $cpucount; $i++) {
+               push(@command,"DEF:iowait".$i."=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpu-".$i."/cpu-wait.rrd:value:AVERAGE"
+                               ,"DEF:nice".$i."=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpu-".$i."/cpu-nice.rrd:value:AVERAGE"
+                               ,"DEF:interrupt".$i."=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpu-".$i."/cpu-interrupt.rrd:value:AVERAGE"
+                               ,"DEF:steal".$i."=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpu-".$i."/cpu-steal.rrd:value:AVERAGE"
+                               ,"DEF:user".$i."=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpu-".$i."/cpu-user.rrd:value:AVERAGE"
+                               ,"DEF:system".$i."=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpu-".$i."/cpu-system.rrd:value:AVERAGE"
+                               ,"DEF:idle".$i."=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpu-".$i."/cpu-idle.rrd:value:AVERAGE"
+                               ,"DEF:irq".$i."=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpu-".$i."/cpu-softirq.rrd:value:AVERAGE");
+
+               $nice .= "nice".$i.",";
+               $interrupt .= "interrupt".$i.",";
+               $steal .= "steal".$i.",";
+               $user .= "user".$i.",";
+               $system .= "system".$i.",";
+               $idle .= "idle".$i.",";
+               $iowait .= "iowait".$i.",";
+               $irq .= "irq".$i.",";
        }
-       push(@command,"DEF:cpu0_=$rrdlog/collectd/localhost/cpufreq/cpufreq-0.rrd:value:AVERAGE");
-
-        if ( -e "$rrdlog/collectd/localhost/cpufreq/cpufreq-1.rrd" ){
-           push(@command,"CDEF:cpu1=cpu1_,1000000,/");
+       
+       for(my $i = 2; $i < $cpucount; $i++) {
+               $addstring .= "+,";
        }
-       push(@command,"CDEF:cpu0=cpu0_,1000000,/",
-                           "COMMENT:CPU",
-                           "COMMENT:$Lang::tr{'maximal'}",
-                           "COMMENT:$Lang::tr{'average'}",
-                           "COMMENT:$Lang::tr{'minimal'}",
-                           "COMMENT:$Lang::tr{'current'}\\j",);
-
-
-        if ( -e "$rrdlog/collectd/localhost/cpufreq/cpufreq-1.rrd" ){
-           push(@command,"LINE3:cpu1".$color{"color12"}."A0:1",
-                           "GPRINT:cpu1:MAX:%3.0lf Mhz",
-                           "GPRINT:cpu1:AVERAGE:%3.0lf Mhz",
-                           "GPRINT:cpu1:MIN:%3.0lf Mhz",
-                           "GPRINT:cpu1:LAST:%3.0lf Mhz\\j",);
+
+       if ( $cpucount > 1){
+               $addstring .= "+";
+               push(@command,$nice.$addstring
+                       ,$interrupt.$addstring
+                       ,$steal.$addstring
+                       ,$user.$addstring
+                       ,$system.$addstring
+                       ,$idle.$addstring
+                       ,$iowait.$addstring
+                       ,$irq.$addstring);
+       }else{
+               chop($nice),chop($interrupt),chop($steal),chop($user),chop($system),chop($idle),chop($iowait),chop($irq);
+               push(@command,$nice,$interrupt,$steal,$user,$system,$idle,$iowait,$irq);
        }
-       push(@command,"LINE2:cpu0".$color{"color11"}."A1:0",
-                           "GPRINT:cpu0:MAX:%3.0lf Mhz",
-                           "GPRINT:cpu0:AVERAGE:%3.0lf Mhz",
-                           "GPRINT:cpu0:MIN:%3.0lf Mhz",
-                           "GPRINT:cpu0:LAST:%3.0lf Mhz\\j",);
+
+       push(@command,"CDEF:total=user,system,idle,iowait,irq,nice,interrupt,steal,+,+,+,+,+,+,+"
+                       ,"CDEF:userpct=100,user,total,/,*"
+                       ,"CDEF:nicepct=100,nice,total,/,*"
+                       ,"CDEF:interruptpct=100,interrupt,total,/,*"
+                       ,"CDEF:stealpct=100,steal,total,/,*"
+                       ,"CDEF:systempct=100,system,total,/,*"
+                       ,"CDEF:idlepct=100,idle,total,/,*"
+                       ,"CDEF:iowaitpct=100,iowait,total,/,*"
+                       ,"CDEF:irqpct=100,irq,total,/,*"
+                       ,"AREA:iowaitpct".$color{"color14"}.":".sprintf("%-25s",$Lang::tr{'cpu iowait usage'})
+                       ,"GPRINT:iowaitpct:MAX:%3.2lf%%"
+                       ,"GPRINT:iowaitpct:AVERAGE:%3.2lf%%"
+                       ,"GPRINT:iowaitpct:MIN:%3.2lf%%"
+                       ,"GPRINT:iowaitpct:LAST:%3.2lf%%\\j"
+                       ,"STACK:irqpct".$color{"color23"}."A0:".sprintf("%-25s",$Lang::tr{'cpu irq usage'})
+                       ,"GPRINT:irqpct:MAX:%3.2lf%%"
+                       ,"GPRINT:irqpct:AVERAGE:%3.2lf%%"
+                       ,"GPRINT:irqpct:MIN:%3.2lf%%"
+                       ,"GPRINT:irqpct:LAST:%3.2lf%%\\j"
+                       ,"STACK:nicepct".$color{"color16"}."A0:".sprintf("%-25s",$Lang::tr{'cpu nice usage'})
+                       ,"GPRINT:nicepct:MAX:%3.2lf%%"
+                       ,"GPRINT:nicepct:AVERAGE:%3.2lf%%"
+                       ,"GPRINT:nicepct:MIN:%3.2lf%%"
+                       ,"GPRINT:nicepct:LAST:%3.2lf%%\\j"
+                       ,"STACK:interruptpct".$color{"color15"}."A0:".sprintf("%-25s",$Lang::tr{'cpu interrupt usage'})
+                       ,"GPRINT:interruptpct:MAX:%3.2lf%%"
+                       ,"GPRINT:interruptpct:AVERAGE:%3.2lf%%"
+                       ,"GPRINT:interruptpct:MIN:%3.2lf%%"
+                       ,"GPRINT:interruptpct:LAST:%3.2lf%%\\j"
+                       ,"STACK:stealpct".$color{"color18"}."A0:".sprintf("%-25s",$Lang::tr{'cpu steal usage'})
+                       ,"GPRINT:stealpct:MAX:%3.2lf%%"
+                       ,"GPRINT:stealpct:AVERAGE:%3.2lf%%"
+                       ,"GPRINT:stealpct:MIN:%3.2lf%%"
+                       ,"GPRINT:stealpct:LAST:%3.2lf%%\\j"
+                       ,"STACK:userpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'cpu user usage'})
+                       ,"GPRINT:userpct:MAX:%3.2lf%%"
+                       ,"GPRINT:userpct:AVERAGE:%3.2lf%%"
+                       ,"GPRINT:userpct:MIN:%3.2lf%%"
+                       ,"GPRINT:userpct:LAST:%3.2lf%%\\j"
+                       ,"STACK:systempct".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'cpu system usage'})
+                       ,"GPRINT:systempct:MAX:%3.2lf%%"
+                       ,"GPRINT:systempct:AVERAGE:%3.2lf%%"
+                       ,"GPRINT:systempct:MIN:%3.2lf%%"
+                       ,"GPRINT:systempct:LAST:%3.2lf%%\\j"
+                       ,"STACK:idlepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'cpu idle usage'})
+                       ,"GPRINT:idlepct:MAX:%3.2lf%%"
+                       ,"GPRINT:idlepct:AVERAGE:%3.2lf%%"
+                       ,"GPRINT:idlepct:MIN:%3.2lf%%"
+                       ,"GPRINT:idlepct:LAST:%3.2lf%%\\j");
 
        RRDs::graph (@command);
-        $ERROR = RRDs::error;
-        print "Error in RRD::graph for cpu: $ERROR\n" if $ERROR;
-    }
+       $ERROR = RRDs::error;
+       print "Error in RRD::graph for cpu: ".$ERROR."\n" if $ERROR;
 }
 
-
 # Generate the Load Graph for the current period of time for values given by collecd
 
 sub updateloadgraph {
-        my $period    = $_[0];
-
-        RRDs::graph ("$graphs/load-$period.png",
-        "--start", "-1$period", "-aPNG",
-        "-w 600", "-h 125", "-i", "-z", "-W www.ipfire.org", "-l 0", "-r", "--alt-y-grid",
-        "-t Load Average $Lang::tr{'graph per'} $Lang::tr{$period}", "-v $Lang::tr{'processes'}",
-        "--color", "SHADEA".$color{"color19"},
-        "--color", "SHADEB".$color{"color19"},
-        "--color", "BACK".$color{"color21"},
-        "DEF:load1=$rrdlog/collectd/localhost/load/load.rrd:shortterm:AVERAGE",
-        "DEF:load5=$rrdlog/collectd/localhost/load/load.rrd:midterm:AVERAGE",
-        "DEF:load15=$rrdlog/collectd/localhost/load/load.rrd:longterm:AVERAGE",
-        "AREA:load1".$color{"color13"}."A0:1 Minute:",
-        "GPRINT:load1:LAST:%5.2lf",
-        "AREA:load5".$color{"color18"}."A0:5 Minuten:",
-        "GPRINT:load5:LAST:%5.2lf",
-        "AREA:load15".$color{"color14"}."A0:15 Minuten:",
-        "GPRINT:load15:LAST:%5.2lf\\j",
-        "LINE1:load5".$color{"color13"},
-        "LINE1:load1".$color{"color18"});
-        $ERROR = RRDs::error;
-        print "Error in RRD::graph for load: $ERROR\n" if $ERROR;
+       my $period    = $_[0];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-l 0",
+               "-r",
+               "-t Load Average".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'processes'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:load1=".$mainsettings{'RRDLOG'}."/collectd/localhost/load/load.rrd:shortterm:AVERAGE",
+               "DEF:load5=".$mainsettings{'RRDLOG'}."/collectd/localhost/load/load.rrd:midterm:AVERAGE",
+               "DEF:load15=".$mainsettings{'RRDLOG'}."/collectd/localhost/load/load.rrd:longterm:AVERAGE",
+               "AREA:load1".$color{"color13"}."A0:1 Minute:",
+               "GPRINT:load1:LAST:%5.2lf",
+               "AREA:load5".$color{"color18"}."A0:5 Minuten:",
+               "GPRINT:load5:LAST:%5.2lf",
+               "AREA:load15".$color{"color14"}."A0:15 Minuten:",
+               "GPRINT:load15:LAST:%5.2lf\\j",
+               "LINE1:load5".$color{"color13"},
+               "LINE1:load1".$color{"color18"},
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for load: ".$ERROR."\n" if $ERROR;
+}
+
+# Generate the Memory Graph for the current period of time for values given by collecd
+
+sub updatememorygraph {
+       my $period    = $_[0];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-l 0",
+               "-u 100",
+               "-r",
+               "-t ".$Lang::tr{'memory usage per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'percentage'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:used=".$mainsettings{'RRDLOG'}."/collectd/localhost/memory/memory-used.rrd:value:AVERAGE",
+               "DEF:free=".$mainsettings{'RRDLOG'}."/collectd/localhost/memory/memory-free.rrd:value:AVERAGE",
+               "DEF:buffer=".$mainsettings{'RRDLOG'}."/collectd/localhost/memory/memory-buffered.rrd:value:AVERAGE",
+               "DEF:cache=".$mainsettings{'RRDLOG'}."/collectd/localhost/memory/memory-cached.rrd:value:AVERAGE",
+               "CDEF:total=used,free,cache,buffer,+,+,+",
+               "CDEF:usedpct=used,total,/,100,*",
+               "CDEF:bufferpct=buffer,total,/,100,*",
+               "CDEF:cachepct=cache,total,/,100,*",
+               "CDEF:freepct=free,total,/,100,*",
+               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
+               "AREA:usedpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'used memory'}),
+               "GPRINT:usedpct:MAX:%3.2lf%%",
+               "GPRINT:usedpct:AVERAGE:%3.2lf%%",
+               "GPRINT:usedpct:MIN:%3.2lf%%",
+               "GPRINT:usedpct:LAST:%3.2lf%%\\j",
+               "STACK:bufferpct".$color{"color23"}."A0:".sprintf("%-25s",$Lang::tr{'buffered memory'}),
+               "GPRINT:bufferpct:MAX:%3.2lf%%",
+               "GPRINT:bufferpct:AVERAGE:%3.2lf%%",
+               "GPRINT:bufferpct:MIN:%3.2lf%%",
+               "GPRINT:bufferpct:LAST:%3.2lf%%\\j",
+               "STACK:cachepct".$color{"color14"}."A0:".sprintf("%-25s",$Lang::tr{'cached memory'}),
+               "GPRINT:cachepct:MAX:%3.2lf%%",
+               "GPRINT:cachepct:AVERAGE:%3.2lf%%",
+               "GPRINT:cachepct:MIN:%3.2lf%%",
+               "GPRINT:cachepct:LAST:%3.2lf%%\\j",
+               "STACK:freepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'free memory'}),
+               "GPRINT:freepct:MAX:%3.2lf%%",
+               "GPRINT:freepct:AVERAGE:%3.2lf%%",
+               "GPRINT:freepct:MIN:%3.2lf%%",
+               "GPRINT:freepct:LAST:%3.2lf%%\\j",
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for memory: ".$ERROR."\n" if $ERROR;
+}
+
+# Generate the Swap Graph for the current period of time for values given by collecd
+
+sub updateswapgraph {
+       my $period    = $_[0];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-l 0",
+               "-u 100",
+               "-r",
+               "-t ".$Lang::tr{'swap usage per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'percentage'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:used=".$mainsettings{'RRDLOG'}."/collectd/localhost/swap/swap-used.rrd:value:AVERAGE",
+               "DEF:free=".$mainsettings{'RRDLOG'}."/collectd/localhost/swap/swap-free.rrd:value:AVERAGE",
+               "DEF:cached=".$mainsettings{'RRDLOG'}."/collectd/localhost/swap/swap-cached.rrd:value:AVERAGE",
+               "CDEF:total=used,free,cached,+,+",
+               "CDEF:usedpct=100,used,total,/,*",
+               "CDEF:freepct=100,free,total,/,*",
+               "CDEF:cachedpct=100,cached,total,/,*",
+               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
+               "AREA:usedpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'used swap'}),
+               "GPRINT:usedpct:MAX:%3.2lf%%",
+               "GPRINT:usedpct:AVERAGE:%3.2lf%%",
+               "GPRINT:usedpct:MIN:%3.2lf%%",
+               "GPRINT:usedpct:LAST:%3.2lf%%\\j",
+               "STACK:freepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'free swap'}),
+               "GPRINT:freepct:MAX:%3.2lf%%",
+               "GPRINT:freepct:AVERAGE:%3.2lf%%",
+               "GPRINT:freepct:MIN:%3.2lf%%",
+               "GPRINT:freepct:LAST:%3.2lf%%\\j",
+               "STACK:cachedpct".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'cached swap'}),
+               "GPRINT:cachedpct:MAX:%3.2lf%%",
+               "GPRINT:cachedpct:AVERAGE:%3.2lf%%",
+               "GPRINT:cachedpct:MIN:%3.2lf%%",
+               "GPRINT:cachedpct:LAST:%3.2lf%%\\j",
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for memory: ".$ERROR."\n" if $ERROR;
+}
+
+# Generate the Process Cpu Graph for the current period of time for values given by collecd
+
+sub updateprocessescpugraph {
+       my @processesgraph = getprocesses();
+       my $period    = $_[0];
+       my $count="0";
+
+       my @command = (
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-l 0",
+               "-r",
+               "-t ".$Lang::tr{'processes'}." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"}
+       );
+
+               foreach(@processesgraph){
+                       chomp($_);my @name=split(/\-/,$_);chop($name[1]);
+                       push(@command,"DEF:".$name[1]."user=".$_."ps_cputime.rrd:user:AVERAGE");
+                       push(@command,"DEF:".$name[1]."system=".$_."ps_cputime.rrd:syst:AVERAGE");
+                       push(@command,"CDEF:".$name[1]."=".$name[1]."user,".$name[1]."system,+");
+               }
+
+               push(@command,"COMMENT:".$Lang::tr{'caption'}."\\j");
+
+               foreach(@processesgraph){
+                       chomp($_);my @name=split(/\-/,$_);chop($name[1]);
+                       if ($count eq "0"){
+                               push(@command,"AREA:".$name[1].random_hex_color(6)."A0:".$name[1]);
+                       }else{
+                               push(@command,"STACK:".$name[1].random_hex_color(6)."A0:".$name[1]);
+                       }
+                       $count++;
+               }
+
+               RRDs::graph (@command);
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for processes: ".$ERROR."\n" if $ERROR;
 }
 
+# Generate the Process Memory Graph for the current period of time for values given by collecd
+
+sub updateprocessesmemorygraph {
+       my @processesgraph = getprocesses();
+       my $period    = $_[0];
+       my $count="0";
+
+       my @command = (
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-l 0",
+               "-r",
+               "-t ".$Lang::tr{'processes'}." ".$Lang::tr{'memory'}." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'bytes'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"}
+       );
+
+               foreach(@processesgraph){
+                       chomp($_);my @name=split(/\-/,$_);chop($name[1]);
+                       push(@command,"DEF:".$name[1]."=".$_."ps_rss.rrd:value:AVERAGE");
+               }
+
+               push(@command,"COMMENT:".$Lang::tr{'caption'}."\\j");
 
-# Generate the Memory and Swap Graph for the current period of time for values given by collecd
-
-sub updatememgraph {
-        my $period    = $_[0];
-
-        RRDs::graph ("$graphs/memory-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org", "-v $Lang::tr{'percentage'}",
-        "--alt-y-grid", "-w 600", "-h 125", "-l 0", "-u 100", "-r",
-        "--color", "SHADEA".$color{"color19"},
-        "--color", "SHADEB".$color{"color19"},
-        "--color", "BACK".$color{"color21"},
-        "-t $Lang::tr{'memory usage per'} $Lang::tr{$period}",
-        "DEF:used=$rrdlog/collectd/localhost/memory/memory-used.rrd:value:AVERAGE",
-        "DEF:free=$rrdlog/collectd/localhost/memory/memory-free.rrd:value:AVERAGE",
-        "DEF:buffer=$rrdlog/collectd/localhost/memory/memory-buffered.rrd:value:AVERAGE",
-        "DEF:cache=$rrdlog/collectd/localhost/memory/memory-cached.rrd:value:AVERAGE",
-        "CDEF:total=used,free,cache,buffer,+,+,+",
-        "CDEF:usedpct=used,total,/,100,*",
-        "CDEF:bufferpct=buffer,total,/,100,*",
-        "CDEF:cachepct=cache,total,/,100,*",
-        "CDEF:freepct=free,total,/,100,*",
-                               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
-        "AREA:usedpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'used memory'}),
-        "GPRINT:usedpct:MAX:%3.2lf%%",
-        "GPRINT:usedpct:AVERAGE:%3.2lf%%",
-        "GPRINT:usedpct:MIN:%3.2lf%%",
-        "GPRINT:usedpct:LAST:%3.2lf%%\\j",
-        "STACK:bufferpct".$color{"color23"}."A0:".sprintf("%-25s",$Lang::tr{'buffered memory'}),
-        "GPRINT:bufferpct:MAX:%3.2lf%%",
-        "GPRINT:bufferpct:AVERAGE:%3.2lf%%",
-        "GPRINT:bufferpct:MIN:%3.2lf%%",
-        "GPRINT:bufferpct:LAST:%3.2lf%%\\j",
-        "STACK:cachepct".$color{"color14"}."A0:".sprintf("%-25s",$Lang::tr{'cached memory'}),
-        "GPRINT:cachepct:MAX:%3.2lf%%",
-        "GPRINT:cachepct:AVERAGE:%3.2lf%%",
-        "GPRINT:cachepct:MIN:%3.2lf%%",
-        "GPRINT:cachepct:LAST:%3.2lf%%\\j",
-        "STACK:freepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'free memory'}),
-        "GPRINT:freepct:MAX:%3.2lf%%",
-        "GPRINT:freepct:AVERAGE:%3.2lf%%",
-        "GPRINT:freepct:MIN:%3.2lf%%",
-        "GPRINT:freepct:LAST:%3.2lf%%\\j");
-        $ERROR = RRDs::error;
-        print "Error in RRD::graph for mem: $ERROR\n" if $ERROR;
-
-        RRDs::graph ("$graphs/swap-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org", "-v $Lang::tr{'percentage'}",
-        "--alt-y-grid", "-w 600", "-h 125", "-l 0", "-u 100", "-r",
-        "--color", "SHADEA".$color{"color19"},
-        "--color", "SHADEB".$color{"color19"},
-        "--color", "BACK".$color{"color21"},
-        "-t $Lang::tr{'swap usage per'} $Lang::tr{$period}",
-        "DEF:used=$rrdlog/collectd/localhost/swap/swap-used.rrd:value:AVERAGE",
-        "DEF:free=$rrdlog/collectd/localhost/swap/swap-free.rrd:value:AVERAGE",
-                               "DEF:cached=$rrdlog/collectd/localhost/swap/swap-cached.rrd:value:AVERAGE",
-        "CDEF:total=used,free,cached,+,+",
-        "CDEF:usedpct=100,used,total,/,*",
-        "CDEF:freepct=100,free,total,/,*",
-        "CDEF:cachedpct=100,cached,total,/,*",
-                               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
-        "AREA:usedpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'used swap'}),
-        "GPRINT:usedpct:MAX:%3.2lf%%",
-        "GPRINT:usedpct:AVERAGE:%3.2lf%%",
-        "GPRINT:usedpct:MIN:%3.2lf%%",
-        "GPRINT:usedpct:LAST:%3.2lf%%\\j",
-        "STACK:freepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'free swap'}),
-        "GPRINT:freepct:MAX:%3.2lf%%",
-        "GPRINT:freepct:AVERAGE:%3.2lf%%",
-        "GPRINT:freepct:MIN:%3.2lf%%",
-        "GPRINT:freepct:LAST:%3.2lf%%\\j",
-        "STACK:cachedpct".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'cached swap'}),
-        "GPRINT:cachedpct:MAX:%3.2lf%%",
-        "GPRINT:cachedpct:AVERAGE:%3.2lf%%",
-        "GPRINT:cachedpct:MIN:%3.2lf%%",
-        "GPRINT:cachedpct:LAST:%3.2lf%%\\j");
-        $ERROR = RRDs::error;
-        print "Error in RRD::graph for swap: $ERROR\n" if $ERROR;
+               foreach(@processesgraph){
+                       chomp($_);my @name=split(/\-/,$_);chop($name[1]);
+                       if ($count eq "0"){
+                               push(@command,"AREA:".$name[1].random_hex_color(6)."A0:".$name[1]);
+                       }else{
+                               push(@command,"STACK:".$name[1].random_hex_color(6)."A0:".$name[1]);
+                       }
+                       $count++;
+               }
+
+               RRDs::graph (@command);
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for processesmemory: ".$ERROR."\n" if $ERROR;
 }
 
 # Generate the Disk Graph for the current period of time for values given by collecd
 
 sub updatediskgraph {
-        my $period    = $_[0];
-        my $disk    = $_[1];
-
-        RRDs::graph ("$graphs/disk-$disk-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org", "-v $Lang::tr{'bytes per second'}",
-        "--alt-y-grid", "-w 600", "-h 125", "-r", "-z",
-                               "--color", "SHADEA".$color{"color19"},
-        "--color", "SHADEB".$color{"color19"},
-        "--color", "BACK".$color{"color21"},
-        "-t $disk $Lang::tr{'disk access per'} $Lang::tr{$period}",
-        "DEF:read=$rrdlog/collectd/localhost/disk-$disk/disk_octets.rrd:read:AVERAGE",
-        "DEF:write=$rrdlog/collectd/localhost/disk-$disk/disk_octets.rrd:write:AVERAGE",
-        "CDEF:writen=write,-1,*",
-        "DEF:standby=$rrdlog/hddshutdown-$disk.rrd:standby:AVERAGE",
-        "CDEF:st=standby,INF,*",
-        "CDEF:st1=standby,-INF,*",
-                               "COMMENT:".sprintf("%-25s",$Lang::tr{'caption'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
-        "AREA:st".$color{"color20"}."A0:",
-        "AREA:st1".$color{"color20"}."A0:standby\\j",
-        "AREA:read".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'read bytes'}),
-        "GPRINT:read:MAX:%8.1lf %sBps",
-        "GPRINT:read:AVERAGE:%8.1lf %sBps",
-        "GPRINT:read:MIN:%8.1lf %sBps",
-        "GPRINT:read:LAST:%8.1lf %sBps\\j",
-        "AREA:writen".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'written bytes'}),
-                               "GPRINT:write:MAX:%8.1lf %sBps",
-        "GPRINT:write:AVERAGE:%8.1lf %sBps",
-        "GPRINT:write:MIN:%8.1lf %sBps",
-        "GPRINT:write:LAST:%8.1lf %sBps\\j");
-        $ERROR = RRDs::error;
-        print "Error in RRD::graph for disk: $ERROR\n" if $ERROR;
+       my $disk    = $_[0];
+       my $period    = $_[1];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-r",
+               "-t ".$disk." ".$Lang::tr{'disk access per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'bytes per second'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:read=".$mainsettings{'RRDLOG'}."/collectd/localhost/disk-$disk/disk_octets.rrd:read:AVERAGE",
+               "DEF:write=".$mainsettings{'RRDLOG'}."/collectd/localhost/disk-$disk/disk_octets.rrd:write:AVERAGE",
+               "CDEF:writen=write,-1,*",
+               "DEF:standby=".$mainsettings{'RRDLOG'}."/hddshutdown-".$disk.".rrd:standby:AVERAGE",
+               "CDEF:st=standby,INF,*",
+               "CDEF:st1=standby,-INF,*",
+               "COMMENT:".sprintf("%-25s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
+               "AREA:st".$color{"color20"}."A0:",
+               "AREA:st1".$color{"color20"}."A0:standby\\j",
+               "AREA:read".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'read bytes'}),
+               "GPRINT:read:MAX:%8.1lf %sBps",
+               "GPRINT:read:AVERAGE:%8.1lf %sBps",
+               "GPRINT:read:MIN:%8.1lf %sBps",
+               "GPRINT:read:LAST:%8.1lf %sBps\\j",
+               "AREA:writen".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'written bytes'}),
+               "GPRINT:write:MAX:%8.1lf %sBps",
+               "GPRINT:write:AVERAGE:%8.1lf %sBps",
+               "GPRINT:write:MIN:%8.1lf %sBps",
+               "GPRINT:write:LAST:%8.1lf %sBps\\j",
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for ".$disk.": ".$ERROR."\n" if $ERROR;
 }
 
 # Generate the Interface Graph for the current period of time for values given by collecd
 
 sub updateifgraph {
-        my $interface = $_[0];
-        my $period    = $_[1];
-
-                               RRDs::graph ("$graphs/$interface-$period.png",
-                               "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org", "-v $Lang::tr{'bytes per second'}",
-                               "--alt-y-grid", "-w 600", "-h 125", "-z", "-r",
-                               "--color", "SHADEA".$color{"color19"},
-                               "--color", "SHADEB".$color{"color19"},
-                               "--color", "BACK".$color{"color21"},
-                               "-t $Lang::tr{'traffic on'} $interface $Lang::tr{'graph per'} $Lang::tr{$period}",
-                               "-v$Lang::tr{'bytes per second'}",
-                               "DEF:incoming=$rrdlog/collectd/localhost/interface/if_octets-$interface.rrd:rx:AVERAGE",
-                               "DEF:outgoing=$rrdlog/collectd/localhost/interface/if_octets-$interface.rrd:tx:AVERAGE",
-                               "CDEF:outgoingn=outgoing,-1,*",
-                               "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
-                               "AREA:incoming".$color{"color12"}."A0:".sprintf("%-20s",$Lang::tr{'incoming traffic in bytes per second'}),
-                               "GPRINT:incoming:MAX:%8.1lf %sBps",
-                               "GPRINT:incoming:AVERAGE:%8.1lf %sBps",
-                               "GPRINT:incoming:MIN:%8.1lf %sBps",
-                               "GPRINT:incoming:LAST:%8.1lf %sBps\\j",
-                               "AREA:outgoingn".$color{"color13"}."A0:".sprintf("%-20s",$Lang::tr{'outgoing traffic in bytes per second'}),
-                               "GPRINT:outgoing:MAX:%8.1lf %sBps",
-                               "GPRINT:outgoing:AVERAGE:%8.1lf %sBps",
-                               "GPRINT:outgoing:MIN:%8.1lf %sBps",
-                               "GPRINT:outgoing:LAST:%8.1lf %sBps\\j");
-                               $ERROR = RRDs::error;
-                               print "Error in RRD::graph for $interface: $ERROR\n" if $ERROR;
+       my $interface = $_[0];
+       my $period    = $_[1];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-r",
+               "-t ".$Lang::tr{'traffic on'}." ".$interface." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'bytes per second'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:incoming=".$mainsettings{'RRDLOG'}."/collectd/localhost/interface/if_octets-".$interface.".rrd:rx:AVERAGE",
+               "DEF:outgoing=".$mainsettings{'RRDLOG'}."/collectd/localhost/interface/if_octets-".$interface.".rrd:tx:AVERAGE",
+               "CDEF:outgoingn=outgoing,-1,*",
+               "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
+               "AREA:incoming".$color{"color12"}."A0:".sprintf("%-20s",$Lang::tr{'incoming traffic in bytes per second'}),
+               "GPRINT:incoming:MAX:%8.1lf %sBps",
+               "GPRINT:incoming:AVERAGE:%8.1lf %sBps",
+               "GPRINT:incoming:MIN:%8.1lf %sBps",
+               "GPRINT:incoming:LAST:%8.1lf %sBps\\j",
+               "AREA:outgoingn".$color{"color13"}."A0:".sprintf("%-20s",$Lang::tr{'outgoing traffic in bytes per second'}),
+               "GPRINT:outgoing:MAX:%8.1lf %sBps",
+               "GPRINT:outgoing:AVERAGE:%8.1lf %sBps",
+               "GPRINT:outgoing:MIN:%8.1lf %sBps",
+               "GPRINT:outgoing:LAST:%8.1lf %sBps\\j",
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for ".$interface.": ".$ERROR."\n" if $ERROR;
 }
 
 # Generate the Firewall Graph for the current period of time for values given by collecd
 
 sub updatefwhitsgraph {
-                               my $period = $_[0];
-                               RRDs::graph ("$graphs/fwhits-$period.png",
-                               "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-                               "--alt-y-grid", "-w 600", "-h 125", "-r", "-v $Lang::tr{'bytes per second'}",
-                               "--color", "SHADEA".$color{"color19"},
-                               "--color", "SHADEB".$color{"color19"},
-                               "--color", "BACK".$color{"color21"},
-                               "-t $Lang::tr{'firewall hits per'} $Lang::tr{$period}",
-                               "DEF:output=$rrdlog/collectd/localhost/iptables-filter-FORWARD/ipt_bytes-DROP_OUTPUT.rrd:value:AVERAGE",
-                               "DEF:input=$rrdlog/collectd/localhost/iptables-filter-INPUT/ipt_bytes-DROP_INPUT.rrd:value:AVERAGE",
-                               "DEF:newnotsyn=$rrdlog/collectd/localhost/iptables-filter-NEWNOTSYN/ipt_bytes-DROP_NEWNOTSYN.rrd:value:AVERAGE",
-                               "DEF:portscan=$rrdlog/collectd/localhost/iptables-filter-PSCAN/ipt_bytes-DROP_PScan.rrd:value:AVERAGE",
-                               "CDEF:amount=output,input,newnotsyn,+,+",
-               "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
-                               "AREA:amount".$color{"color24"}."A0:".sprintf("%-20s",$Lang::tr{'firewallhits'}),
-                               "GPRINT:amount:MAX:%8.1lf %sBps",
-                               "GPRINT:amount:AVERAGE:%8.1lf %sBps",
-                               "GPRINT:amount:MIN:%8.1lf %sBps",
-                               "GPRINT:amount:LAST:%8.1lf %sBps\\j",
-                               "STACK:portscan".$color{"color25"}."A0:".sprintf("%-20s",$Lang::tr{'portscans'}),
-                               "GPRINT:portscan:MAX:%8.1lf %sBps",
-                               "GPRINT:portscan:MIN:%8.1lf %sBps",
-                               "GPRINT:portscan:AVERAGE:%8.1lf %sBps",
-                               "GPRINT:portscan:LAST:%8.1lf %sBps\\j");
-                               $ERROR = RRDs::error;
-    print "Error in RRD::graph for Firewallhits: $ERROR\n" if $ERROR;
+       my $period    = $_[0];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-r",
+               "-t ".$Lang::tr{'firewall hits per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'bytes per second'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:output=".$mainsettings{'RRDLOG'}."/collectd/localhost/iptables-filter-FORWARD/ipt_bytes-DROP_OUTPUT.rrd:value:AVERAGE",
+               "DEF:input=".$mainsettings{'RRDLOG'}."/collectd/localhost/iptables-filter-INPUT/ipt_bytes-DROP_INPUT.rrd:value:AVERAGE",
+               "DEF:newnotsyn=".$mainsettings{'RRDLOG'}."/collectd/localhost/iptables-filter-NEWNOTSYN/ipt_bytes-DROP_NEWNOTSYN.rrd:value:AVERAGE",
+               "DEF:portscan=".$mainsettings{'RRDLOG'}."/collectd/localhost/iptables-filter-PSCAN/ipt_bytes-DROP_PScan.rrd:value:AVERAGE",
+               "CDEF:amount=output,input,newnotsyn,+,+",
+               "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
+               "AREA:amount".$color{"color24"}."A0:".sprintf("%-20s",$Lang::tr{'firewallhits'}),
+               "GPRINT:amount:MAX:%8.1lf %sBps",
+               "GPRINT:amount:AVERAGE:%8.1lf %sBps",
+               "GPRINT:amount:MIN:%8.1lf %sBps",
+               "GPRINT:amount:LAST:%8.1lf %sBps\\j",
+               "STACK:portscan".$color{"color25"}."A0:".sprintf("%-20s",$Lang::tr{'portscans'}),
+               "GPRINT:portscan:MAX:%8.1lf %sBps",
+               "GPRINT:portscan:MIN:%8.1lf %sBps",
+               "GPRINT:portscan:AVERAGE:%8.1lf %sBps",
+               "GPRINT:portscan:LAST:%8.1lf %sBps\\j",
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for firewallhits: ".$ERROR."\n" if $ERROR;
 }
 
 # Generate the Line Quality Graph for the current period of time for values given by collecd
 
 sub updatepinggraph {
-                               my $period    = $_[0];
-                               my $host    = $_[1];
-                               RRDs::graph ("$graphs/$host-$period.png",
-                               "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org",
-                               "--alt-y-grid", "-w 600", "-h 125", "-l 0", "-r", "-v ms",
-                               "-t $Lang::tr{'linkq'} $host $Lang::tr{'graph per'} $Lang::tr{$period}",
-                               "--color", "SHADEA".$color{"color19"},
-                               "--color", "SHADEB".$color{"color19"},
-                               "--color", "BACK".$color{"color21"},
-                               "DEF:roundtrip=$rrdlog/collectd/localhost/ping/ping-$host.rrd:ping:AVERAGE",
-                               "COMMENT:$Lang::".sprintf("%-20s",$Lang::tr{'caption'})."\\j",
-                               "CDEF:roundavg=roundtrip,PREV(roundtrip),+,2,/",
-                               "CDEF:r0=roundtrip,30,MIN",
-                               "CDEF:r1=roundtrip,70,MIN",
-                               "CDEF:r2=roundtrip,150,MIN",
-                               "CDEF:r3=roundtrip,300,MIN",
-                               "AREA:roundtrip".$color{"color25"}."A0:>300 ms",
-                               "AREA:r3".$color{"color18"}."A0:150-300 ms",
-                               "AREA:r2".$color{"color14"}."A0:70-150 ms",
-                               "AREA:r1".$color{"color17"}."A0:30-70 ms",
-                               "AREA:r0".$color{"color12"}."A0:<30 ms\\j",
-                               "COMMENT:$Lang::tr{'maximal'}",
-                               "COMMENT:$Lang::tr{'average'}",
-                               "COMMENT:$Lang::tr{'minimal'}","COMMENT:$Lang::tr{'current'}\\j",
-                               "LINE1:roundtrip#707070:",
-                               "GPRINT:roundtrip:MAX:%3.2lf ms",
-                               "GPRINT:roundtrip:AVERAGE:%3.2lf ms",
-                               "GPRINT:roundtrip:MIN:%3.2lf ms",
-                               "GPRINT:roundtrip:LAST:%3.2lf ms\\j");
-                               $ERROR = RRDs::error;
-                               print "Error in RRD::graph for Link Quality: $ERROR\n" if $ERROR;
+       my $period    = $_[1];
+       my $host    = $_[0];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-l 0",
+               "-r",
+               "-t ".$Lang::tr{'linkq'}." ".$host." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "-v ms",
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:roundtrip=".$mainsettings{'RRDLOG'}."/collectd/localhost/ping/ping-".$host.".rrd:ping:AVERAGE",
+               "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'})."\\j",
+               "CDEF:roundavg=roundtrip,PREV(roundtrip),+,2,/",
+               "CDEF:r0=roundtrip,30,MIN",
+               "CDEF:r1=roundtrip,70,MIN",
+               "CDEF:r2=roundtrip,150,MIN",
+               "CDEF:r3=roundtrip,300,MIN",
+               "AREA:roundtrip".$color{"color25"}."A0:>300 ms",
+               "AREA:r3".$color{"color18"}."A0:150-300 ms",
+               "AREA:r2".$color{"color14"}."A0:70-150 ms",
+               "AREA:r1".$color{"color17"}."A0:30-70 ms",
+               "AREA:r0".$color{"color12"}."A0:<30 ms\\j",
+               "COMMENT:$Lang::tr{'maximal'}",
+               "COMMENT:$Lang::tr{'average'}",
+               "COMMENT:$Lang::tr{'minimal'}","COMMENT:$Lang::tr{'current'}\\j",
+               "LINE1:roundtrip#707070:",
+               "GPRINT:roundtrip:MAX:%3.2lf ms",
+               "GPRINT:roundtrip:AVERAGE:%3.2lf ms",
+               "GPRINT:roundtrip:MIN:%3.2lf ms",
+               "GPRINT:roundtrip:LAST:%3.2lf ms\\j",
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for link quality: ".$ERROR."\n" if $ERROR;
 }
 
-# Generate the Hdd Graph for the current period of time for values given by collecd
-
-sub updatehddgraph {
-
-  my $disk = $_[0];
-  my $period = $_[1];
-
-  RRDs::graph ("$graphs/hddtemp-$disk-$period.png",
-  "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-  "--alt-y-grid", "-w 600", "-h 125",
-  "--color", "SHADEA".$color{"color19"},
-  "--color", "SHADEB".$color{"color19"},
-  "--color", "BACK".$color{"color21"},
-  "-t $disk $Lang::tr{'harddisk temperature'} $Lang::tr{'graph per'} $Lang::tr{$period}",
-  "DEF:temperature=$rrdlog/hddtemp-$disk.rrd:temperature:AVERAGE",
-  "DEF:standby=$rrdlog/hddshutdown-$disk.rrd:standby:AVERAGE",
-  "CDEF:st=standby,INF,*",
-  "AREA:st".$color{"color20"}."A0:standby",
-  "LINE3:temperature".$color{"color11"}."A0:$Lang::tr{'hdd temperature in'} C\\j",
-  "COMMENT:$Lang::tr{'maximal'}",
-  "COMMENT:$Lang::tr{'average'}",
-  "COMMENT:$Lang::tr{'minimal'}",
-  "COMMENT:$Lang::tr{'current'}\\j",
-  "GPRINT:temperature:MAX:%3.0lf Grad C",
-  "GPRINT:temperature:AVERAGE:%3.0lf Grad C",
-  "GPRINT:temperature:MIN:%3.0lf Grad C",
-  "GPRINT:temperature:LAST:%3.0lf Grad C\\j",
-  );
-  $ERROR = RRDs::error;
-  print "Error in RRD::graph for hdd-$disk: $ERROR\n" if $ERROR;
+sub updatewirelessgraph {
+       my $period    = $_[1];
+       my $interface    = $_[0];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-t Wireless ".$interface." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "-v dBm",
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:noise=".$mainsettings{'RRDLOG'}."/collectd/localhost/wireless-".$interface."/signal_noise.rrd:value:AVERAGE",
+               "DEF:power=".$mainsettings{'RRDLOG'}."/collectd/localhost/wireless-".$interface."/signal_power.rrd:value:AVERAGE",
+               "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
+               "LINE1:noise".$color{"color11"}."A0:".sprintf("%-20s","Signal Noise Ratio"),
+               "GPRINT:noise:MAX:%5.1lf %sdBm",
+               "GPRINT:noise:AVERAGE:%5.1lf %sdBm",
+               "GPRINT:noise:MIN:%5.1lf %sdBm",
+               "GPRINT:noise:LAST:%5.1lf %sdBm\\j",
+               "LINE1:power".$color{"color12"}."A0:".sprintf("%-20s","Signal Power Ratio"),
+               "GPRINT:power:MAX:%5.1lf %sdBm",
+               "GPRINT:power:AVERAGE:%5.1lf %sdBm",
+               "GPRINT:power:MIN:%5.1lf %sdBm",
+               "GPRINT:power:LAST:%5.1lf %sdBm\\j",
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for wireless: ".$ERROR."\n" if $ERROR;
 }
 
-# Generate the QoS Graph for the current period of time
-
-sub overviewgraph {
+# Generate the HDD Temp Graph for the current period of time for values given by collecd and lm_sensors
 
-  my $period = $_[0];
-  my $periodstring;
-  my $description;
-  my %qossettings = ();
-  &General::readhash("${General::swroot}/qos/settings", \%qossettings);
-  my $classentry = "";
-  my @classes = ();
-  my @classline = ();
-  my $classfile = "/var/ipfire/qos/classes";
-
-       $qossettings{'DEV'} = $_[1];
-       if ( $qossettings{'DEV'} eq $qossettings{'RED_DEV'} ) {
-               $qossettings{'CLASSPRFX'} = '1';
-       } else {
-               $qossettings{'CLASSPRFX'} = '2';
-       }
+sub updatehddgraph {
+       my $disk = $_[0];
+       my $period = $_[1];
+       RRDs::graph(
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-r",
+               "-t ".$disk." ".$Lang::tr{'harddisk temperature'}." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "-v Celsius",
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "DEF:temperature=".$mainsettings{'RRDLOG'}."/hddtemp-$disk.rrd:temperature:AVERAGE",
+               "DEF:standby=".$mainsettings{'RRDLOG'}."/hddshutdown-$disk.rrd:standby:AVERAGE",
+               "CDEF:st=standby,INF,*",
+               "AREA:st".$color{"color20"}."A0:standby",
+               "LINE3:temperature".$color{"color11"}."A0:$Lang::tr{'hdd temperature in'} C\\j",
+               "COMMENT:$Lang::tr{'maximal'}",
+               "COMMENT:$Lang::tr{'average'}",
+               "COMMENT:$Lang::tr{'minimal'}",
+               "COMMENT:$Lang::tr{'current'}\\j",
+               "GPRINT:temperature:MAX:%3.0lf Grad C",
+               "GPRINT:temperature:AVERAGE:%3.0lf Grad C",
+               "GPRINT:temperature:MIN:%3.0lf Grad C",
+               "GPRINT:temperature:LAST:%3.0lf Grad C\\j",
+               );
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for hdd-".$disk.": ".$ERROR."\n" if $ERROR;
+}
 
-  if ( $period ne '3240' ){ $periodstring = "-1$period";}else{ $periodstring = "-".$period;}
-  if ( $period ne '3240' ){ $description = "-t $Lang::tr{'Utilization on'} ($qossettings{'DEV'}) ($Lang::tr{'graph per'} $Lang::tr{$period})";}else{ $description = "-t $Lang::tr{'Utilization on'} ($qossettings{'DEV'})";}
+# Generate the Temp Graph for the current period of time for values given by collecd and lm_sensors
 
-       my $ERROR="";
-       my $count="1";
-       my $color="#000000";
-       my @command=("/srv/web/ipfire/html/graphs/qos-graph-$qossettings{'DEV'}-$period.png",
-               "--start", $periodstring, "-aPNG", "-i", "-z", "-W www.ipfire.org",
-               "--alt-y-grid", "-w 600", "-h 125", "-r", "-v $Lang::tr{'bytes per second'}",
-    "--color", "SHADEA".$color{"color19"},
-    "--color", "SHADEB".$color{"color19"},
-    "--color", "BACK".$color{"color21"},
-               "COMMENT:".sprintf("%-28s",$Lang::tr{'caption'}),
+sub updatehwtempgraph {
+       my $period = $_[0];
+
+       my @command = (
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-r",
+               "-t ".$Lang::tr{'sensors temp'}." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
                "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
                "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
                "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
-               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
-               $description
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j"
        );
-       open( FILE, "< $classfile" ) or die "Unable to read $classfile";
-       @classes = <FILE>;
-       close FILE;
-       foreach $classentry (sort @classes)
-       {
-               @classline = split( /\;/, $classentry );
-               if ( $classline[0] eq $qossettings{'DEV'} )
-               {
-                       $color=random_hex_color(6);
-                       push(@command, "DEF:$classline[1]=$rrdlog/class_$qossettings{'CLASSPRFX'}-$classline[1]_$qossettings{'DEV'}.rrd:bytes:AVERAGE");
-
-                       if ($count eq "1") {
-                               push(@command, "AREA:$classline[1]$color:Klasse $classline[1] -".sprintf("%15s",$classline[8]));
-                       } else {
-                               push(@command, "STACK:$classline[1]$color:Klasse $classline[1] -".sprintf("%15s",$classline[8]));
 
+               foreach(@sensorsgraphs){
+                       chomp($_);
+                       if ( $_ =~ /temperature/ ) {
+                               $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
+                               my $label = $2.$3;$label=~ s/-//g;
+                               if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
+                               push(@command,"DEF:".$sensorsettings{'LABEL-'.$label}."=".$_.":value:AVERAGE");
                        }
-                       push(@command, "GPRINT:$classline[1]:MAX:%8.1lf %sBps");
-                       push(@command, "GPRINT:$classline[1]:AVERAGE:%8.1lf %sBps");
-                       push(@command, "GPRINT:$classline[1]:MIN:%8.1lf %sBps");
-                       push(@command, "GPRINT:$classline[1]:LAST:%8.1lf %sBps\\j");
-                       $count++;
                }
-       }
-       RRDs::graph (@command);
-       $ERROR = RRDs::error;
-       print "$ERROR";
-}
 
-# Generate the Temperature Graph for the current period of time for values given by collecd and lm_sensors
+               foreach(@sensorsgraphs){
+                       chomp($_);
+                       if ( $_ =~ /temperature/ ){
+                               $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
+                               my $label = $2.$3;$label=~ s/-//g;
+                               if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
+                               push(@command,"LINE3:".$sensorsettings{'LABEL-'.$label}.random_hex_color(6)."A0:".sprintf("%-25s",$sensorsettings{'LABEL-'.$label}),"GPRINT:".$sensorsettings{'LABEL-'.$label}.":MAX:%3.2lf C","GPRINT:".$sensorsettings{'LABEL-'.$label}.":AVERAGE:%3.2lf C","GPRINT:".$sensorsettings{'LABEL-'.$label}.":MIN:%3.2lf C","GPRINT:".$sensorsettings{'LABEL-'.$label}.":LAST:%3.2lf C\\j",);
+                       }
+               }
 
-sub updatehwtempgraph {
+               RRDs::graph (@command);
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for HDD Temp: ".$ERROR."\n" if $ERROR;
+}
 
-  my $period = $_[0];
+# Generate the Fan Graph for the current period of time for values given by collecd and lm_sensors
 
-  my @command = ("$graphs/sensors-hwtemp-$period.png",
-       "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org",
-       "--alt-y-grid", "-w 600", "-h 125",
-       "--color", "SHADEA".$color{"color19"},"--color",
-       "SHADEB".$color{"color19"},"--color",
-       "BACK".$color{"color21"},
-       "-t $Lang::tr{'sensors temp'} $Lang::tr{'graph per'} $Lang::tr{$period}");
+sub updatehwfangraph {
+       my $period = $_[0];
+
+       my @command = (
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-r",
+               "-t ".$Lang::tr{'mbmon fan'}." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j"
+       );
 
-       foreach(@sensorsgraphs){
-               chomp($_);
-               if ( $_ =~ /temperature/ ) {
-                       $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
-                       my $label = $2.$3;$label=~ s/-//g;
-                       if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
-                       push(@command,"DEF:".$sensorsettings{'LABEL-'.$label}."=".$_.":value:AVERAGE");
+               foreach(@sensorsgraphs){
+                       chomp($_);
+                       if ( $_ =~ /fanspeed/ ) {
+                               $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
+                               my $label = $2.$3;$label=~ s/-//g;
+                               if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
+                               push(@command,"DEF:".$sensorsettings{'LABEL-'.$label}."=".$_.":value:AVERAGE");
+                       }
                }
-       }
-       push(@command,"COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),"COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),"COMMENT:".sprintf("%15s",$Lang::tr{'average'}),"COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),"COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j");
-       foreach(@sensorsgraphs){
-               chomp($_);
-               if ( $_ =~ /temperature/ ){
-                       $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
-                       my $label = $2.$3;$label=~ s/-//g;
-                       if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
-                       push(@command,"LINE3:".$sensorsettings{'LABEL-'.$label}.random_hex_color(6)."A0:".sprintf("%-25s",$sensorsettings{'LABEL-'.$label}),"GPRINT:".$sensorsettings{'LABEL-'.$label}.":MAX:%3.2lf C","GPRINT:".$sensorsettings{'LABEL-'.$label}.":AVERAGE:%3.2lf C","GPRINT:".$sensorsettings{'LABEL-'.$label}.":MIN:%3.2lf C","GPRINT:".$sensorsettings{'LABEL-'.$label}.":LAST:%3.2lf C\\j",);
+
+               foreach(@sensorsgraphs){
+                       chomp($_);
+                       if ( $_ =~ /fanspeed/ ){
+                               $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
+                               my $label = $2.$3;$label=~ s/-//g;
+                               if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
+                               push(@command,"LINE3:".$sensorsettings{'LABEL-'.$label}.random_hex_color(6)."A0:".sprintf("%-25s",$sensorsettings{'LABEL-'.$label}),"GPRINT:".$sensorsettings{'LABEL-'.$label}.":MAX:%3.2lf RPM","GPRINT:".$sensorsettings{'LABEL-'.$label}.":AVERAGE:%3.2lf RPM","GPRINT:".$sensorsettings{'LABEL-'.$label}.":MIN:%3.2lf RPM","GPRINT:".$sensorsettings{'LABEL-'.$label}.":LAST:%3.2lf RPM\\j",);
+                       }
                }
-       }
-       RRDs::graph (@command);
-       $ERROR = RRDs::error;
-       print "$ERROR";
+
+               RRDs::graph (@command);
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for Fan Speed: ".$ERROR."\n" if $ERROR;
 }
 
 # Generate the Voltage Graph for the current period of time for values given by collecd and lm_sensors
 
 sub updatehwvoltgraph {
+       my $period = $_[0];
+
+       my @command = (
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-r",
+               "-t ".$Lang::tr{'mbmon volt'}." ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j"
+       );
 
-  my $period = $_[0];
-
-  my @command = ("$graphs/sensors-hwvolt-$period.png",
-       "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org",
-       "--alt-y-grid", "-w 600", "-h 125",
-       "--color", "SHADEA".$color{"color19"},"--color",
-       "SHADEB".$color{"color19"},"--color",
-       "BACK".$color{"color21"},
-       "-t $Lang::tr{'mbmon volt'} $Lang::tr{'graph per'} $Lang::tr{$period}");
-
-       foreach(@sensorsgraphs){
-               chomp($_);
-               if ( $_ =~ /voltage/ ) {
-                       $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
-                       my $label = $2.$3;$label=~ s/-//g;
-                       if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
-                       push(@command,"DEF:".$sensorsettings{'LABEL-'.$label}."=".$_.":value:AVERAGE");
+               foreach(@sensorsgraphs){
+                       chomp($_);
+                       if ( $_ =~ /voltage/ ) {
+                               $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
+                               my $label = $2.$3;$label=~ s/-//g;
+                               if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
+                               push(@command,"DEF:".$sensorsettings{'LABEL-'.$label}."=".$_.":value:AVERAGE");
+                       }
                }
-       }
-       push(@command,"COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),"COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),"COMMENT:".sprintf("%15s",$Lang::tr{'average'}),"COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),"COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j");
-       foreach(@sensorsgraphs){
-               chomp($_);
-               if ( $_ =~ /voltage/ ){
-                       $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
-                       my $label = $2.$3;$label=~ s/-//g;
-                       if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
-                       push(@command,"LINE3:".$sensorsettings{'LABEL-'.$label}.random_hex_color(6)."A0:".sprintf("%-25s",$sensorsettings{'LABEL-'.$label}),"GPRINT:".$sensorsettings{'LABEL-'.$label}.":MAX:%3.2lf V","GPRINT:".$sensorsettings{'LABEL-'.$label}.":AVERAGE:%3.2lf V","GPRINT:".$sensorsettings{'LABEL-'.$label}.":MIN:%3.2lf V","GPRINT:".$sensorsettings{'LABEL-'.$label}.":LAST:%3.2lf V\\j",);
+
+               foreach(@sensorsgraphs){
+                       chomp($_);
+                       if ( $_ =~ /voltage/ ){
+                               $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
+                               my $label = $2.$3;$label=~ s/-//g;
+                               if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
+                               push(@command,"LINE3:".$sensorsettings{'LABEL-'.$label}.random_hex_color(6)."A0:".sprintf("%-25s",$sensorsettings{'LABEL-'.$label}),"GPRINT:".$sensorsettings{'LABEL-'.$label}.":MAX:%3.2lf V","GPRINT:".$sensorsettings{'LABEL-'.$label}.":AVERAGE:%3.2lf V","GPRINT:".$sensorsettings{'LABEL-'.$label}.":MIN:%3.2lf V","GPRINT:".$sensorsettings{'LABEL-'.$label}.":LAST:%3.2lf V\\j",);
+                       }
                }
-       }
-       RRDs::graph (@command);
-       $ERROR = RRDs::error;
-       print "$ERROR";
+
+               RRDs::graph (@command);
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for Voltage: ".$ERROR."\n" if $ERROR;
 }
 
-# Generate the Load Graph for the current period of time for values given by collecd and lm_sensors
 
-sub updatehwfangraph {
+# Generate the QoS Graph for the current period of time
 
-  my $period = $_[0];
+sub updateqosgraph {
 
-  my @command = ("$graphs/sensors-hwfan-$period.png",
-       "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org",
-       "--alt-y-grid", "-w 600", "-h 125",
-       "--color", "SHADEA".$color{"color19"},"--color",
-       "SHADEB".$color{"color19"},"--color",
-       "BACK".$color{"color21"},
-       "-t $Lang::tr{'mbmon fan'} $Lang::tr{'graph per'} $Lang::tr{$period}");
+       my $period = $_[1];
+       my %qossettings = ();
+       &General::readhash("${General::swroot}/qos/settings", \%qossettings);
 
-       foreach(@sensorsgraphs){
-               chomp($_);
-               if ( $_ =~ /fanspeed/ ) {
-                       $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
-                       my $label = $2.$3;$label=~ s/-//g;
-                       if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
-                       push(@command,"DEF:".$sensorsettings{'LABEL-'.$label}."=".$_.":value:AVERAGE");
-               }
-       }
-       push(@command,"COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),"COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),"COMMENT:".sprintf("%15s",$Lang::tr{'average'}),"COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),"COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j");
-       foreach(@sensorsgraphs){
-               chomp($_);
-               if ( $_ =~ /fanspeed/ ){
-                       $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
-                       my $label = $2.$3;$label=~ s/-//g;
-                       if ( $sensorsettings{'LINE-'.$label} eq "off" ){next;}
-                       push(@command,"LINE3:".$sensorsettings{'LABEL-'.$label}.random_hex_color(6)."A0:".sprintf("%-25s",$sensorsettings{'LABEL-'.$label}),"GPRINT:".$sensorsettings{'LABEL-'.$label}.":MAX:%3.2lf RPM","GPRINT:".$sensorsettings{'LABEL-'.$label}.":AVERAGE:%3.2lf RPM","GPRINT:".$sensorsettings{'LABEL-'.$label}.":MIN:%3.2lf RPM","GPRINT:".$sensorsettings{'LABEL-'.$label}.":LAST:%3.2lf RPM\\j",);
-               }
+       my $classentry = "";
+       my @classes = ();
+       my @classline = ();
+       my $classfile = "/var/ipfire/qos/classes";
+
+       $qossettings{'DEV'} = $_[0];
+       if ( $qossettings{'DEV'} eq $qossettings{'RED_DEV'} ) {
+               $qossettings{'CLASSPRFX'} = '1';
+       } else {
+               $qossettings{'CLASSPRFX'} = '2';
        }
-       RRDs::graph (@command);
-       $ERROR = RRDs::error;
-       print "$ERROR";
-}
 
-sub updateprocessesgraph {
+       my $ERROR="";
+       my $count="1";
+       my $color="#000000";
 
-  my $period = $_[0];
-  my $count="0";
+       my @command = (
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-r",
+               "-t ".$Lang::tr{'Utilization on'}." (".$qossettings{'DEV'}.") ".$Lang::tr{'graph per'}." ".$Lang::tr{$period},
+               "-v ".$Lang::tr{'bytes per second'},
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "COMMENT:".sprintf("%-28s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j"
+       );
 
-  my @command = ("$graphs/processes-$period.png",
-       "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org",
-       "--alt-y-grid", "-w 600", "-h 125",
-       "--color", "SHADEA".$color{"color19"},"--color",
-       "SHADEB".$color{"color19"},"--color",
-       "BACK".$color{"color21"},
-       "-t $Lang::tr{'processes'} $Lang::tr{'graph per'} $Lang::tr{$period}");
+               open( FILE, "< $classfile" ) or die "Unable to read $classfile";
+               @classes = <FILE>;
+               close FILE;
 
-       foreach(@processesgraph){
-                       chomp($_);my @name=split(/\-/,$_);chop($name[1]);
-                       push(@command,"DEF:".$name[1]."user=".$_."ps_cputime.rrd:user:AVERAGE");
-                       push(@command,"DEF:".$name[1]."system=".$_."ps_cputime.rrd:syst:AVERAGE");
-                       push(@command,"CDEF:".$name[1]."=".$name[1]."user,".$name[1]."system,+");}
-
-                       push(@command,"COMMENT:".$Lang::tr{'caption'}."\\j");
+               foreach $classentry (sort @classes){
+                       @classline = split( /\;/, $classentry );
+                       if ( $classline[0] eq $qossettings{'DEV'} ){
+                               $color=random_hex_color(6);
+                               push(@command, "DEF:$classline[1]=$mainsettings{'RRDLOG'}/class_$qossettings{'CLASSPRFX'}-$classline[1]_$qossettings{'DEV'}.rrd:bytes:AVERAGE");
 
-       foreach(@processesgraph){
-                       chomp($_);my @name=split(/\-/,$_);chop($name[1]);
-                       if ($count eq "0") {push(@command,"AREA:".$name[1].random_hex_color(6)."A0:".$name[1]);}
-                       else {push(@command,"STACK:".$name[1].random_hex_color(6)."A0:".$name[1]);}
-                       $count++;}
+                               if ($count eq "1") {
+                                       push(@command, "AREA:$classline[1]$color:Klasse $classline[1] -".sprintf("%15s",$classline[8]));
+                               } else {
+                                       push(@command, "STACK:$classline[1]$color:Klasse $classline[1] -".sprintf("%15s",$classline[8]));
 
-       RRDs::graph (@command);
-       $ERROR = RRDs::error;
-       print "$ERROR";
+                               }
 
-  my $count="0";
+                               push(@command, "GPRINT:$classline[1]:MAX:%8.1lf %sBps"
+                                               , "GPRINT:$classline[1]:AVERAGE:%8.1lf %sBps"
+                                               , "GPRINT:$classline[1]:MIN:%8.1lf %sBps"
+                                               , "GPRINT:$classline[1]:LAST:%8.1lf %sBps\\j");
+                               $count++;
+                       }
+               }
+               RRDs::graph (@command);
+               $ERROR = RRDs::error;
+               print "Error in RRD::graph for qos device ".$qossettings{'DEV'}.": ".$ERROR."\n" if $ERROR;
+}
 
-  my @command = ("$graphs/processesmem-$period.png",
-       "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org",
-       "--alt-y-grid", "-w 600", "-h 125",
-       "--color", "SHADEA".$color{"color19"},"--color",
-       "SHADEB".$color{"color19"},"--color",
-       "BACK".$color{"color21"},
-       "-t $Lang::tr{'processes'} $Lang::tr{'memory'} $Lang::tr{'graph per'} $Lang::tr{$period}");
+# Generate the CPU Frequency Graph for the current period of time for values given by collectd an lm_sensors
 
-       foreach(@processesgraph){
-                       chomp($_);my @name=split(/\-/,$_);chop($name[1]);
-                       push(@command,"DEF:".$name[1]."=".$_."ps_rss.rrd:value:AVERAGE");}
-                       push(@command,"COMMENT:".$Lang::tr{'caption'}."\\j");
+sub updatecpufreqgraph {
+       my $cpucount = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/cpu-*/ | wc -l`;
+       my $period    = $_[0];
+       my @command = (
+               "-",
+               "--start",
+               "-1".$period,
+               "-aPNG",
+               "-i",
+               "-z",
+               "-W www.ipfire.org",
+               "--alt-y-grid",
+               "-w 600",
+               "-h 125",
+               "-l 0",
+               "-u 100",
+               "-r",
+               "-t ".$Lang::tr{'cpu frequency per'}." ".$Lang::tr{$period},
+               "-v MHz",
+               "--color=SHADEA".$color{"color19"},
+               "--color=SHADEB".$color{"color19"},
+               "--color=BACK".$color{"color21"},
+               "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
+               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j"
+       );
 
-       foreach(@processesgraph){
-                       chomp($_);my @name=split(/\-/,$_);chop($name[1]);
-                       if ($count eq "0") {push(@command,"AREA:".$name[1].random_hex_color(6)."A0:".$name[1]);}
-                       else {push(@command,"STACK:".$name[1].random_hex_color(6)."A0:".$name[1]);}
-                       $count++;}
+       for(my $i = 0; $i < $cpucount; $i++) {
+               push(@command,"DEF:cpu".$i."_=".$mainsettings{'RRDLOG'}."/collectd/localhost/cpufreq/cpufreq-".$i.".rrd:value:AVERAGE"
+                               ,"CDEF:cpu".$i."=cpu".$i."_,1000000,/"
+                               ,"LINE3:cpu".$i.$color{"color12"}."A0:1"
+                               ,"GPRINT:cpu".$i.":MAX:%3.0lf Mhz"
+                               ,"GPRINT:cpu".$i.":AVERAGE:%3.0lf Mhz"
+                               ,"GPRINT:cpu".$i.":MIN:%3.0lf Mhz"
+                               ,"GPRINT:cpu".$i.":LAST:%3.0lf Mhz\\j");
+       }
 
        RRDs::graph (@command);
        $ERROR = RRDs::error;
-       print "$ERROR";
-}
-
-sub wireless {
-                               my $period    = $_[0];
-                               my $interface    = $_[1];
-                               RRDs::graph ("$graphs/wireless-$interface-$period.png",
-                               "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org",
-                               "--alt-y-grid", "-w 600", "-h 125", "-v dBm", "-z",
-                               "-t Wireless $interface $Lang::tr{'graph per'} $Lang::tr{$period}",
-                               "--color", "SHADEA".$color{"color19"},
-                               "--color", "SHADEB".$color{"color19"},
-                               "--color", "BACK".$color{"color21"},
-                               "DEF:noise=$rrdlog/collectd/localhost/wireless-$interface/signal_noise.rrd:value:AVERAGE",
-                               "DEF:power=$rrdlog/collectd/localhost/wireless-$interface/signal_power.rrd:value:AVERAGE",
-                               "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
-                               "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
-                               "LINE1:noise".$color{"color11"}."A0:".sprintf("%-20s","Signal Noise Ratio"),
-                               "GPRINT:noise:MAX:%5.1lf %sdBm",
-                               "GPRINT:noise:AVERAGE:%5.1lf %sdBm",
-                               "GPRINT:noise:MIN:%5.1lf %sdBm",
-                               "GPRINT:noise:LAST:%5.1lf %sdBm\\j",
-                               "LINE1:power".$color{"color12"}."A0:".sprintf("%-20s","Signal Power Ratio"),
-                               "GPRINT:power:MAX:%5.1lf %sdBm",
-                               "GPRINT:power:AVERAGE:%5.1lf %sdBm",
-                               "GPRINT:power:MIN:%5.1lf %sdBm",
-                               "GPRINT:power:LAST:%5.1lf %sdBm\\j",
-                               );
-                               $ERROR = RRDs::error;
-                               print "Error in RRD::graph for Wireless: $ERROR\n" if $ERROR;
+       print "Error in RRD::graph for cpu freq: ".$ERROR."\n" if $ERROR;
 }
 
 # Generate a random color, used by Qos Graph to be independent from the amount of values
 
 sub random_hex_color {
-    my $size = shift;
-    $size = 6 if $size !~ /^3|6$/;
-    my @hex = ( 0 .. 9, 'a' .. 'f' );
-    my @color;
-    push @color, @hex[rand(@hex)] for 1 .. $size;
-    return join('', '#', @color);
+       my $size = shift;
+       $size = 6 if $size !~ /^3|6$/;
+       my @hex = ( 0 .. 9, 'a' .. 'f' );
+       my @color;
+       push @color, @hex[rand(@hex)] for 1 .. $size;
+       return join('', '#', @color);
+}
+
+sub getprocesses {
+       my @processesgraph = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/processes-*/`;
+       return @processesgraph;
 }
index a9663f3984746b580d884be8015ea93d9d7746df..9ddd6d82bc4d360373658478e8743e59fc05d8b9 100644 (file)
@@ -17,6 +17,7 @@ NETSCAPE,Netscape,(^Mozilla\/4.[7|8])|(Netscape)
 OPERA,Opera,(Opera)
 SAFARI,Safari,(Safari)
 SYMLU,Symantec LiveUpdate,(Symantec\sLiveUpdate)
+THUNDERBIRD,Thunderbird,(Thunderbird)
 WGA,WGA,(LegitCheck)
 WGET,Wget,(Wget)
 WINUPD,Windows Update,(Industry\sUpdate\sControl)|(Windows\sUpdate)|(Service\sPack\sSetup)|(Progressive\sDownload)|(Windows\-Update\-Agent)|(Microsoft\sBITS)
index f92ecf2c8ac64e5d0f9d3f3b57149ffc2a4ca894..c2a974a1009e9c0ea07c48057e43a5b258796b49 100644 (file)
@@ -19,7 +19,6 @@ LoadPlugin interface
 LoadPlugin iptables
 LoadPlugin load
 #LoadPlugin logfile
-#LoadPlugin mbmon
 LoadPlugin memory
 LoadPlugin ping
 LoadPlugin processes
@@ -76,8 +75,6 @@ LoadPlugin syslog
 
 <Plugin rrdtool>
        DataDir "/var/log/rrd/collectd"
-       CacheTimeout 300
-       CacheFlush   900
 </Plugin>
 
 <Plugin syslog>
index 0fa7ebcc2b6313705e19d50c677b01e1408db556..004369b1a955cdcbf13801e184bc2de5a05ea824 100644 (file)
@@ -22,6 +22,7 @@ HOME=/
 
 # Make some nice graphs
 */5 * * * *    /usr/local/bin/makegraphs >/dev/null
+01 * * * *     /etc/init.d/collectd backup >/dev/null
 
 # Force update the dynamic dns registration once a week
 # Force update even if IP has not changed once a month if 'minimize update' selected in GUI
index 48aa63e19d33470da80d218382796ff87600096b..a82aaeb9414013aa22a8cc7d3d251a69a06acacc 100644 (file)
@@ -8,4 +8,7 @@ DEVICE4 /var    FSTYPE  defaults        1       1
 proc   /proc   proc    defaults        0       0
 sysfs  /sys    sysfs   defaults        0       0
 devpts /dev/pts        devpts   gid=4,mode=620  0     0
-shm    /dev/shm        tmpfs   defaults        0       0
+shm    /dev/shm        tmpfs   defaults,size=25%       0       0
+none   /tmp            tmpfs   defaults,size=128M      0       0
+none   /var/log/rrd    tmpfs   defaults,size=64M       0       0
+none   /var/lock       tmpfs   defaults,size=32M       0       0
index 886d6d77b01b8d3eacd1be336a9df4a8315d3054..c4b7e2adbe4b77e6d4d597a7982421feed8b19bc 100644 (file)
@@ -34,3 +34,8 @@ title IPFire (all storage drivers)
   kernel /vmlinuz-KVER-ipfire root=ROOT rootdelay=10 panic=10 MOUNT
   initrd /ipfirerd-KVER-emergency.img
   savedefault 5
+title IPFire - experimental kernel-2.6.25.17 - no ipsec (vesafb 640x480)
+  root (hd0,0)
+  kernel /vmlinuz-2.6.25.17-ipfire root=ROOT rootdelay=10 panic=10 vga=785 MOUNT
+  initrd /ipfirerd-2.6.25.17.img
+  savedefault 6
diff --git a/config/kernel/kernel25.config.i586 b/config/kernel/kernel25.config.i586
new file mode 100644 (file)
index 0000000..5b08af6
--- /dev/null
@@ -0,0 +1,3277 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 2.6.25.17
+# Mon Sep 29 16:16:16 2008
+#
+# CONFIG_64BIT is not set
+CONFIG_X86_32=y
+# CONFIG_X86_64 is not set
+CONFIG_X86=y
+CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
+# CONFIG_GENERIC_LOCKBREAK is not set
+CONFIG_GENERIC_TIME=y
+CONFIG_GENERIC_CMOS_UPDATE=y
+CONFIG_CLOCKSOURCE_WATCHDOG=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_SEMAPHORE_SLEEPERS=y
+CONFIG_FAST_CMPXCHG_LOCAL=y
+CONFIG_MMU=y
+CONFIG_ZONE_DMA=y
+CONFIG_GENERIC_ISA_DMA=y
+CONFIG_GENERIC_IOMAP=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_HWEIGHT=y
+# CONFIG_GENERIC_GPIO is not set
+CONFIG_ARCH_MAY_HAVE_PC_FDC=y
+CONFIG_DMI=y
+# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
+CONFIG_RWSEM_XCHGADD_ALGORITHM=y
+# CONFIG_ARCH_HAS_ILOG2_U32 is not set
+# CONFIG_ARCH_HAS_ILOG2_U64 is not set
+CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+# CONFIG_GENERIC_TIME_VSYSCALL is not set
+CONFIG_ARCH_HAS_CPU_RELAX=y
+# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+# CONFIG_ZONE_DMA32 is not set
+CONFIG_ARCH_POPULATES_NODE_MAP=y
+# CONFIG_AUDIT_ARCH is not set
+CONFIG_ARCH_SUPPORTS_AOUT=y
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_PENDING_IRQ=y
+CONFIG_X86_SMP=y
+CONFIG_X86_32_SMP=y
+CONFIG_X86_HT=y
+CONFIG_X86_BIOS_REBOOT=y
+CONFIG_X86_TRAMPOLINE=y
+CONFIG_KTIME_SCALAR=y
+CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
+
+#
+# General setup
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_LOCK_KERNEL=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_LOCALVERSION=""
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_POSIX_MQUEUE=y
+# CONFIG_BSD_PROCESS_ACCT is not set
+# CONFIG_TASKSTATS is not set
+CONFIG_AUDIT=y
+CONFIG_AUDITSYSCALL=y
+CONFIG_AUDIT_TREE=y
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=15
+# CONFIG_CGROUPS is not set
+# CONFIG_GROUP_SCHED is not set
+CONFIG_SYSFS_DEPRECATED=y
+CONFIG_SYSFS_DEPRECATED_V2=y
+# CONFIG_RELAY is not set
+CONFIG_NAMESPACES=y
+# CONFIG_UTS_NS is not set
+# CONFIG_IPC_NS is not set
+# CONFIG_USER_NS is not set
+# CONFIG_PID_NS is not set
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+CONFIG_SYSCTL=y
+# CONFIG_EMBEDDED is not set
+CONFIG_UID16=y
+CONFIG_SYSCTL_SYSCALL=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_EXTRA_PASS is not set
+CONFIG_HOTPLUG=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_COMPAT_BRK=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_ANON_INODES=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_SLAB=y
+# CONFIG_SLUB is not set
+# CONFIG_SLOB is not set
+# CONFIG_PROFILING is not set
+# CONFIG_MARKERS is not set
+CONFIG_HAVE_OPROFILE=y
+# CONFIG_KPROBES is not set
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_PROC_PAGE_MONITOR=y
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+# CONFIG_TINY_SHMEM is not set
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODULE_FORCE_UNLOAD=y
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_KMOD=y
+CONFIG_STOP_MACHINE=y
+CONFIG_BLOCK=y
+CONFIG_LBD=y
+# CONFIG_BLK_DEV_IO_TRACE is not set
+CONFIG_LSF=y
+# CONFIG_BLK_DEV_BSG is not set
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_AS=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+CONFIG_DEFAULT_AS=y
+# CONFIG_DEFAULT_DEADLINE is not set
+# CONFIG_DEFAULT_CFQ is not set
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED="anticipatory"
+CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_CLASSIC_RCU=y
+
+#
+# Processor type and features
+#
+# CONFIG_TICK_ONESHOT is not set
+# CONFIG_NO_HZ is not set
+# CONFIG_HIGH_RES_TIMERS is not set
+CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
+CONFIG_SMP=y
+CONFIG_X86_PC=y
+# CONFIG_X86_ELAN is not set
+# CONFIG_X86_VOYAGER is not set
+# CONFIG_X86_NUMAQ is not set
+# CONFIG_X86_SUMMIT is not set
+# CONFIG_X86_BIGSMP is not set
+# CONFIG_X86_VISWS is not set
+# CONFIG_X86_GENERICARCH is not set
+# CONFIG_X86_ES7000 is not set
+# CONFIG_X86_RDC321X is not set
+# CONFIG_X86_VSMP is not set
+CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
+# CONFIG_PARAVIRT_GUEST is not set
+# CONFIG_M386 is not set
+# CONFIG_M486 is not set
+CONFIG_M586=y
+# CONFIG_M586TSC is not set
+# CONFIG_M586MMX is not set
+# CONFIG_M686 is not set
+# CONFIG_MPENTIUMII is not set
+# CONFIG_MPENTIUMIII is not set
+# CONFIG_MPENTIUMM is not set
+# CONFIG_MPENTIUM4 is not set
+# CONFIG_MK6 is not set
+# CONFIG_MK7 is not set
+# CONFIG_MK8 is not set
+# CONFIG_MCRUSOE is not set
+# CONFIG_MEFFICEON is not set
+# CONFIG_MWINCHIPC6 is not set
+# CONFIG_MWINCHIP2 is not set
+# CONFIG_MWINCHIP3D is not set
+# CONFIG_MGEODEGX1 is not set
+# CONFIG_MGEODE_LX is not set
+# CONFIG_MCYRIXIII is not set
+# CONFIG_MVIAC3_2 is not set
+# CONFIG_MVIAC7 is not set
+# CONFIG_MPSC is not set
+# CONFIG_MCORE2 is not set
+# CONFIG_GENERIC_CPU is not set
+CONFIG_X86_GENERIC=y
+CONFIG_X86_CMPXCHG=y
+CONFIG_X86_L1_CACHE_SHIFT=7
+CONFIG_X86_XADD=y
+CONFIG_X86_PPRO_FENCE=y
+CONFIG_X86_F00F_BUG=y
+CONFIG_X86_WP_WORKS_OK=y
+CONFIG_X86_INVLPG=y
+CONFIG_X86_BSWAP=y
+CONFIG_X86_POPAD_OK=y
+CONFIG_X86_ALIGNMENT_16=y
+CONFIG_X86_INTEL_USERCOPY=y
+CONFIG_X86_MINIMUM_CPU_FAMILY=4
+CONFIG_HPET_TIMER=y
+CONFIG_HPET_EMULATE_RTC=y
+# CONFIG_IOMMU_HELPER is not set
+CONFIG_NR_CPUS=8
+CONFIG_SCHED_SMT=y
+CONFIG_SCHED_MC=y
+CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_VOLUNTARY is not set
+# CONFIG_PREEMPT is not set
+CONFIG_X86_LOCAL_APIC=y
+CONFIG_X86_IO_APIC=y
+CONFIG_X86_MCE=y
+CONFIG_X86_MCE_NONFATAL=m
+CONFIG_X86_MCE_P4THERMAL=y
+CONFIG_VM86=y
+CONFIG_TOSHIBA=m
+CONFIG_I8K=m
+CONFIG_X86_REBOOTFIXUPS=y
+CONFIG_MICROCODE=m
+CONFIG_MICROCODE_OLD_INTERFACE=y
+CONFIG_X86_MSR=m
+CONFIG_X86_CPUID=y
+# CONFIG_NOHIGHMEM is not set
+CONFIG_HIGHMEM4G=y
+# CONFIG_HIGHMEM64G is not set
+CONFIG_PAGE_OFFSET=0xC0000000
+CONFIG_HIGHMEM=y
+CONFIG_ARCH_FLATMEM_ENABLE=y
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_ARCH_SELECT_MEMORY_MODEL=y
+CONFIG_SELECT_MEMORY_MODEL=y
+CONFIG_FLATMEM_MANUAL=y
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+# CONFIG_SPARSEMEM_MANUAL is not set
+CONFIG_FLATMEM=y
+CONFIG_FLAT_NODE_MEM_MAP=y
+CONFIG_SPARSEMEM_STATIC=y
+# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
+CONFIG_SPLIT_PTLOCK_CPUS=4
+# CONFIG_RESOURCES_64BIT is not set
+CONFIG_ZONE_DMA_FLAG=1
+CONFIG_BOUNCE=y
+CONFIG_VIRT_TO_BUS=y
+# CONFIG_HIGHPTE is not set
+CONFIG_MATH_EMULATION=y
+CONFIG_MTRR=y
+# CONFIG_EFI is not set
+CONFIG_IRQBALANCE=y
+CONFIG_SECCOMP=y
+CONFIG_HZ_100=y
+# CONFIG_HZ_250 is not set
+# CONFIG_HZ_300 is not set
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=100
+# CONFIG_SCHED_HRTICK is not set
+# CONFIG_KEXEC is not set
+# CONFIG_CRASH_DUMP is not set
+CONFIG_PHYSICAL_START=0x100000
+# CONFIG_RELOCATABLE is not set
+CONFIG_PHYSICAL_ALIGN=0x100000
+CONFIG_HOTPLUG_CPU=y
+CONFIG_COMPAT_VDSO=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+
+#
+# Power management options
+#
+CONFIG_PM=y
+CONFIG_PM_LEGACY=y
+# CONFIG_PM_DEBUG is not set
+CONFIG_PM_SLEEP_SMP=y
+CONFIG_PM_SLEEP=y
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+# CONFIG_HIBERNATION is not set
+CONFIG_ACPI=y
+CONFIG_ACPI_SLEEP=y
+# CONFIG_ACPI_PROCFS is not set
+CONFIG_ACPI_PROCFS_POWER=y
+CONFIG_ACPI_SYSFS_POWER=y
+CONFIG_ACPI_PROC_EVENT=y
+CONFIG_ACPI_AC=m
+CONFIG_ACPI_BATTERY=m
+CONFIG_ACPI_BUTTON=m
+CONFIG_ACPI_VIDEO=m
+CONFIG_ACPI_FAN=m
+CONFIG_ACPI_DOCK=m
+CONFIG_ACPI_BAY=m
+CONFIG_ACPI_PROCESSOR=m
+CONFIG_ACPI_HOTPLUG_CPU=y
+CONFIG_ACPI_THERMAL=m
+CONFIG_ACPI_WMI=m
+# CONFIG_ACPI_ASUS is not set
+# CONFIG_ACPI_TOSHIBA is not set
+CONFIG_ACPI_CUSTOM_DSDT_FILE=""
+# CONFIG_ACPI_CUSTOM_DSDT is not set
+CONFIG_ACPI_BLACKLIST_YEAR=0
+# CONFIG_ACPI_DEBUG is not set
+CONFIG_ACPI_EC=y
+CONFIG_ACPI_POWER=y
+CONFIG_ACPI_SYSTEM=y
+CONFIG_X86_PM_TIMER=y
+CONFIG_ACPI_CONTAINER=m
+# CONFIG_ACPI_SBS is not set
+CONFIG_X86_APM_BOOT=y
+CONFIG_APM=m
+CONFIG_APM_IGNORE_USER_SUSPEND=y
+# CONFIG_APM_DO_ENABLE is not set
+CONFIG_APM_CPU_IDLE=y
+# CONFIG_APM_DISPLAY_BLANK is not set
+# CONFIG_APM_ALLOW_INTS is not set
+# CONFIG_APM_REAL_MODE_POWER_OFF is not set
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_TABLE=y
+# CONFIG_CPU_FREQ_DEBUG is not set
+CONFIG_CPU_FREQ_STAT=y
+CONFIG_CPU_FREQ_STAT_DETAILS=y
+CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_USERSPACE=m
+CONFIG_CPU_FREQ_GOV_ONDEMAND=m
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
+
+#
+# CPUFreq processor drivers
+#
+CONFIG_X86_ACPI_CPUFREQ=m
+CONFIG_X86_POWERNOW_K6=m
+CONFIG_X86_POWERNOW_K7=m
+CONFIG_X86_POWERNOW_K7_ACPI=y
+CONFIG_X86_POWERNOW_K8=m
+CONFIG_X86_POWERNOW_K8_ACPI=y
+CONFIG_X86_GX_SUSPMOD=m
+CONFIG_X86_SPEEDSTEP_CENTRINO=m
+CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y
+CONFIG_X86_SPEEDSTEP_ICH=m
+CONFIG_X86_SPEEDSTEP_SMI=m
+CONFIG_X86_P4_CLOCKMOD=m
+CONFIG_X86_CPUFREQ_NFORCE2=m
+CONFIG_X86_LONGRUN=m
+CONFIG_X86_LONGHAUL=m
+CONFIG_X86_E_POWERSAVER=m
+
+#
+# shared options
+#
+# CONFIG_X86_ACPI_CPUFREQ_PROC_INTF is not set
+CONFIG_X86_SPEEDSTEP_LIB=m
+# CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_GOV_LADDER=y
+
+#
+# Bus options (PCI etc.)
+#
+CONFIG_PCI=y
+# CONFIG_PCI_GOBIOS is not set
+# CONFIG_PCI_GOMMCONFIG is not set
+# CONFIG_PCI_GODIRECT is not set
+CONFIG_PCI_GOANY=y
+CONFIG_PCI_BIOS=y
+CONFIG_PCI_DIRECT=y
+CONFIG_PCI_MMCONFIG=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCIEPORTBUS=y
+CONFIG_PCIEAER=y
+CONFIG_ARCH_SUPPORTS_MSI=y
+CONFIG_PCI_MSI=y
+CONFIG_PCI_LEGACY=y
+CONFIG_HT_IRQ=y
+CONFIG_ISA_DMA_API=y
+CONFIG_ISA=y
+CONFIG_EISA=y
+CONFIG_EISA_VLB_PRIMING=y
+CONFIG_EISA_PCI_EISA=y
+CONFIG_EISA_VIRTUAL_ROOT=y
+CONFIG_EISA_NAMES=y
+CONFIG_MCA=y
+CONFIG_MCA_LEGACY=y
+# CONFIG_MCA_PROC_FS is not set
+CONFIG_SCx200=m
+CONFIG_SCx200HR_TIMER=m
+CONFIG_K8_NB=y
+CONFIG_PCCARD=m
+# CONFIG_PCMCIA_DEBUG is not set
+CONFIG_PCMCIA=m
+CONFIG_PCMCIA_LOAD_CIS=y
+CONFIG_PCMCIA_IOCTL=y
+CONFIG_CARDBUS=y
+
+#
+# PC-card bridges
+#
+CONFIG_YENTA=m
+CONFIG_YENTA_O2=y
+CONFIG_YENTA_RICOH=y
+CONFIG_YENTA_TI=y
+CONFIG_YENTA_ENE_TUNE=y
+CONFIG_YENTA_TOSHIBA=y
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_I82365=m
+CONFIG_TCIC=m
+CONFIG_PCMCIA_PROBE=y
+CONFIG_PCCARD_NONSTATIC=m
+# CONFIG_HOTPLUG_PCI is not set
+
+#
+# Executable file formats / Emulations
+#
+CONFIG_BINFMT_ELF=y
+# CONFIG_BINFMT_AOUT is not set
+# CONFIG_BINFMT_MISC is not set
+
+#
+# Networking
+#
+CONFIG_NET=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+CONFIG_PACKET_MMAP=y
+CONFIG_UNIX=y
+CONFIG_XFRM=y
+CONFIG_XFRM_USER=m
+# CONFIG_XFRM_SUB_POLICY is not set
+CONFIG_XFRM_MIGRATE=y
+CONFIG_XFRM_STATISTICS=y
+CONFIG_NET_KEY=m
+CONFIG_NET_KEY_MIGRATE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_ASK_IP_FIB_HASH=y
+# CONFIG_IP_FIB_TRIE is not set
+CONFIG_IP_FIB_HASH=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+CONFIG_ARPD=y
+CONFIG_SYN_COOKIES=y
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_XFRM_TUNNEL=m
+CONFIG_INET_TUNNEL=m
+CONFIG_IPSEC_NAT_TRAVERSAL=y
+CONFIG_INET_XFRM_MODE_TRANSPORT=y
+CONFIG_INET_XFRM_MODE_TUNNEL=y
+CONFIG_INET_XFRM_MODE_BEET=y
+CONFIG_INET_LRO=m
+CONFIG_INET_DIAG=m
+CONFIG_INET_TCP_DIAG=m
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=m
+CONFIG_TCP_CONG_CUBIC=m
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+# CONFIG_DEFAULT_BIC is not set
+# CONFIG_DEFAULT_CUBIC is not set
+# CONFIG_DEFAULT_HTCP is not set
+# CONFIG_DEFAULT_VEGAS is not set
+# CONFIG_DEFAULT_WESTWOOD is not set
+CONFIG_DEFAULT_RENO=y
+CONFIG_DEFAULT_TCP_CONG="reno"
+# CONFIG_TCP_MD5SIG is not set
+# CONFIG_IP_VS is not set
+# CONFIG_IPV6 is not set
+# CONFIG_INET6_XFRM_TUNNEL is not set
+# CONFIG_INET6_TUNNEL is not set
+# CONFIG_NETWORK_SECMARK is not set
+CONFIG_NETFILTER=y
+# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=y
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_NETLINK=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_CT_ACCT=y
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CT_PROTO_GRE=m
+CONFIG_NF_CT_PROTO_SCTP=m
+CONFIG_NF_CT_PROTO_UDPLITE=m
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NETFILTER_XTABLES=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_LAYER7=m
+# CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_CONNTRACK_IPV4=m
+CONFIG_NF_CONNTRACK_PROC_COMPAT=y
+CONFIG_IP_NF_QUEUE=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_RECENT=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_MATCH_ADDRTYPE=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_IMQ=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_LOG=m
+CONFIG_IP_NF_TARGET_ULOG=m
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_NEEDED=y
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_NF_NAT_PROTO_GRE=m
+CONFIG_NF_NAT_FTP=m
+CONFIG_NF_NAT_IRC=m
+CONFIG_NF_NAT_TFTP=m
+CONFIG_NF_NAT_AMANDA=m
+CONFIG_NF_NAT_PPTP=m
+CONFIG_NF_NAT_H323=m
+CONFIG_NF_NAT_SIP=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
+CONFIG_IP_NF_RAW=m
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+CONFIG_IP_NF_MATCH_IPP2P=m
+
+#
+# Bridge: Netfilter Configuration
+#
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_ULOG=m
+# CONFIG_IP_DCCP is not set
+# CONFIG_IP_SCTP is not set
+# CONFIG_TIPC is not set
+CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+CONFIG_ATM_CLIP_NO_ICMP=y
+# CONFIG_ATM_LANE is not set
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_BRIDGE=m
+CONFIG_VLAN_8021Q=m
+# CONFIG_DECNET is not set
+CONFIG_LLC=m
+# CONFIG_LLC2 is not set
+# CONFIG_IPX is not set
+# CONFIG_ATALK is not set
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_ECONET is not set
+# CONFIG_WAN_ROUTER is not set
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_RR=m
+CONFIG_NET_SCH_RED=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+CONFIG_NET_SCH_GRED=m
+CONFIG_NET_SCH_DSMARK=m
+CONFIG_NET_SCH_NETEM=m
+CONFIG_NET_SCH_INGRESS=m
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_TCINDEX=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_ROUTE=y
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+CONFIG_CLS_U32_PERF=y
+CONFIG_CLS_U32_MARK=y
+CONFIG_NET_CLS_RSVP=m
+# CONFIG_NET_CLS_RSVP6 is not set
+CONFIG_NET_CLS_FLOW=m
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
+CONFIG_NET_EMATCH_TEXT=m
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=m
+CONFIG_NET_ACT_GACT=m
+CONFIG_GACT_PROB=y
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_IPT=m
+CONFIG_NET_ACT_NAT=m
+CONFIG_NET_ACT_PEDIT=m
+# CONFIG_NET_ACT_SIMP is not set
+CONFIG_NET_CLS_IND=y
+CONFIG_NET_SCH_FIFO=y
+
+#
+# Network testing
+#
+# CONFIG_NET_PKTGEN is not set
+# CONFIG_HAMRADIO is not set
+# CONFIG_CAN is not set
+CONFIG_IRDA=m
+
+#
+# IrDA protocols
+#
+CONFIG_IRLAN=m
+CONFIG_IRNET=m
+CONFIG_IRCOMM=m
+# CONFIG_IRDA_ULTRA is not set
+
+#
+# IrDA options
+#
+# CONFIG_IRDA_CACHE_LAST_LSAP is not set
+# CONFIG_IRDA_FAST_RR is not set
+# CONFIG_IRDA_DEBUG is not set
+
+#
+# Infrared-port device drivers
+#
+
+#
+# SIR device drivers
+#
+CONFIG_IRTTY_SIR=m
+
+#
+# Dongle support
+#
+# CONFIG_DONGLE is not set
+CONFIG_KINGSUN_DONGLE=m
+CONFIG_KSDAZZLE_DONGLE=m
+CONFIG_KS959_DONGLE=m
+
+#
+# FIR device drivers
+#
+CONFIG_USB_IRDA=m
+CONFIG_SIGMATEL_FIR=m
+CONFIG_NSC_FIR=m
+CONFIG_WINBOND_FIR=m
+CONFIG_TOSHIBA_FIR=m
+CONFIG_SMC_IRCC_FIR=m
+CONFIG_ALI_FIR=m
+CONFIG_VLSI_FIR=m
+CONFIG_VIA_FIR=m
+CONFIG_MCS_FIR=m
+CONFIG_BT=m
+CONFIG_BT_L2CAP=m
+CONFIG_BT_SCO=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_CMTP=m
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIUSB=m
+CONFIG_BT_HCIUSB_SCO=y
+CONFIG_BT_HCIBTSDIO=m
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIDTL1=m
+CONFIG_BT_HCIBT3C=m
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIVHCI=m
+CONFIG_AF_RXRPC=m
+# CONFIG_AF_RXRPC_DEBUG is not set
+CONFIG_RXKAD=m
+CONFIG_FIB_RULES=y
+
+#
+# Wireless
+#
+CONFIG_CFG80211=m
+CONFIG_NL80211=y
+CONFIG_WIRELESS_EXT=y
+CONFIG_MAC80211=m
+
+#
+# Rate control algorithm selection
+#
+CONFIG_MAC80211_RC_DEFAULT_PID=y
+# CONFIG_MAC80211_RC_DEFAULT_SIMPLE is not set
+# CONFIG_MAC80211_RC_DEFAULT_NONE is not set
+
+#
+# Selecting 'y' for an algorithm will
+#
+
+#
+# build the algorithm into mac80211.
+#
+CONFIG_MAC80211_RC_DEFAULT="pid"
+CONFIG_MAC80211_RC_PID=y
+CONFIG_MAC80211_RC_SIMPLE=m
+# CONFIG_MAC80211_LEDS is not set
+# CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT is not set
+# CONFIG_MAC80211_DEBUG is not set
+CONFIG_IEEE80211=m
+# CONFIG_IEEE80211_DEBUG is not set
+CONFIG_IEEE80211_CRYPT_WEP=m
+CONFIG_IEEE80211_CRYPT_CCMP=m
+CONFIG_IEEE80211_CRYPT_TKIP=m
+CONFIG_IEEE80211_SOFTMAC=m
+# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
+CONFIG_RFKILL=m
+CONFIG_RFKILL_INPUT=m
+CONFIG_RFKILL_LEDS=y
+# CONFIG_NET_9P is not set
+
+#
+# Device Drivers
+#
+
+#
+# Generic Driver Options
+#
+CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
+# CONFIG_STANDALONE is not set
+# CONFIG_PREVENT_FIRMWARE_BUILD is not set
+CONFIG_FW_LOADER=m
+# CONFIG_SYS_HYPERVISOR is not set
+CONFIG_CONNECTOR=m
+CONFIG_MTD=m
+# CONFIG_MTD_DEBUG is not set
+CONFIG_MTD_CONCAT=m
+CONFIG_MTD_PARTITIONS=y
+# CONFIG_MTD_REDBOOT_PARTS is not set
+
+#
+# User Modules And Translation Layers
+#
+CONFIG_MTD_CHAR=m
+CONFIG_MTD_BLKDEVS=m
+CONFIG_MTD_BLOCK=m
+# CONFIG_MTD_BLOCK_RO is not set
+# CONFIG_FTL is not set
+# CONFIG_NFTL is not set
+# CONFIG_INFTL is not set
+# CONFIG_RFD_FTL is not set
+# CONFIG_SSFDC is not set
+# CONFIG_MTD_OOPS is not set
+
+#
+# RAM/ROM/Flash chip drivers
+#
+# CONFIG_MTD_CFI is not set
+# CONFIG_MTD_JEDECPROBE is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+# CONFIG_MTD_RAM is not set
+# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_ABSENT is not set
+
+#
+# Mapping drivers for chip access
+#
+# CONFIG_MTD_COMPLEX_MAPPINGS is not set
+# CONFIG_MTD_TS5500 is not set
+# CONFIG_MTD_INTEL_VR_NOR is not set
+# CONFIG_MTD_PLATRAM is not set
+
+#
+# Self-contained MTD device drivers
+#
+# CONFIG_MTD_PMC551 is not set
+# CONFIG_MTD_SLRAM is not set
+# CONFIG_MTD_PHRAM is not set
+# CONFIG_MTD_MTDRAM is not set
+# CONFIG_MTD_BLOCK2MTD is not set
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOC2000 is not set
+# CONFIG_MTD_DOC2001 is not set
+# CONFIG_MTD_DOC2001PLUS is not set
+# CONFIG_MTD_NAND is not set
+# CONFIG_MTD_ONENAND is not set
+
+#
+# UBI - Unsorted block images
+#
+CONFIG_MTD_UBI=m
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_RESERVE=1
+# CONFIG_MTD_UBI_GLUEBI is not set
+
+#
+# UBI debugging options
+#
+# CONFIG_MTD_UBI_DEBUG is not set
+CONFIG_PARPORT=m
+CONFIG_PARPORT_PC=m
+CONFIG_PARPORT_SERIAL=m
+CONFIG_PARPORT_PC_FIFO=y
+CONFIG_PARPORT_PC_SUPERIO=y
+CONFIG_PARPORT_PC_PCMCIA=m
+# CONFIG_PARPORT_GSC is not set
+CONFIG_PARPORT_AX88796=m
+CONFIG_PARPORT_1284=y
+CONFIG_PARPORT_NOT_PC=y
+CONFIG_PNP=y
+# CONFIG_PNP_DEBUG is not set
+
+#
+# Protocols
+#
+CONFIG_ISAPNP=y
+CONFIG_PNPBIOS=y
+CONFIG_PNPBIOS_PROC_FS=y
+CONFIG_PNPACPI=y
+CONFIG_BLK_DEV=y
+CONFIG_BLK_DEV_FD=m
+# CONFIG_BLK_DEV_XD is not set
+# CONFIG_PARIDE is not set
+CONFIG_BLK_CPQ_DA=m
+CONFIG_BLK_CPQ_CISS_DA=m
+# CONFIG_CISS_SCSI_TAPE is not set
+CONFIG_BLK_DEV_DAC960=m
+# CONFIG_BLK_DEV_UMEM is not set
+# CONFIG_BLK_DEV_COW_COMMON is not set
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_CRYPTOLOOP=m
+CONFIG_BLK_DEV_NBD=m
+CONFIG_BLK_DEV_SX8=m
+# CONFIG_BLK_DEV_UB is not set
+CONFIG_BLK_DEV_RAM=y
+CONFIG_BLK_DEV_RAM_COUNT=8
+CONFIG_BLK_DEV_RAM_SIZE=16384
+# CONFIG_BLK_DEV_XIP is not set
+# CONFIG_CDROM_PKTCDVD is not set
+CONFIG_ATA_OVER_ETH=m
+CONFIG_VIRTIO_BLK=m
+CONFIG_MISC_DEVICES=y
+# CONFIG_IBM_ASM is not set
+# CONFIG_PHANTOM is not set
+CONFIG_EEPROM_93CX6=m
+# CONFIG_SGI_IOC4 is not set
+CONFIG_TIFM_CORE=m
+CONFIG_TIFM_7XX1=m
+CONFIG_ACER_WMI=m
+CONFIG_ASUS_LAPTOP=m
+CONFIG_FUJITSU_LAPTOP=m
+CONFIG_TC1100_WMI=m
+CONFIG_MSI_LAPTOP=m
+CONFIG_SONY_LAPTOP=m
+# CONFIG_SONYPI_COMPAT is not set
+CONFIG_THINKPAD_ACPI=m
+# CONFIG_THINKPAD_ACPI_DEBUG is not set
+CONFIG_THINKPAD_ACPI_BAY=y
+CONFIG_THINKPAD_ACPI_VIDEO=y
+CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
+CONFIG_INTEL_MENLOW=m
+CONFIG_ENCLOSURE_SERVICES=m
+CONFIG_HAVE_IDE=y
+CONFIG_IDE=y
+CONFIG_BLK_DEV_IDE=m
+
+#
+# Please see Documentation/ide/ide.txt for help/info on IDE drives
+#
+# CONFIG_BLK_DEV_IDE_SATA is not set
+# CONFIG_BLK_DEV_HD_IDE is not set
+CONFIG_BLK_DEV_IDEDISK=m
+# CONFIG_IDEDISK_MULTI_MODE is not set
+CONFIG_BLK_DEV_IDECS=m
+CONFIG_BLK_DEV_DELKIN=m
+CONFIG_BLK_DEV_IDECD=m
+CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
+# CONFIG_BLK_DEV_IDETAPE is not set
+CONFIG_BLK_DEV_IDEFLOPPY=m
+# CONFIG_BLK_DEV_IDESCSI is not set
+CONFIG_BLK_DEV_IDEACPI=y
+# CONFIG_IDE_TASK_IOCTL is not set
+CONFIG_IDE_PROC_FS=y
+
+#
+# IDE chipset support/bugfixes
+#
+CONFIG_IDE_GENERIC=m
+CONFIG_BLK_DEV_PLATFORM=m
+CONFIG_BLK_DEV_CMD640=m
+CONFIG_BLK_DEV_CMD640_ENHANCED=y
+CONFIG_BLK_DEV_IDEPNP=m
+CONFIG_BLK_DEV_IDEDMA_SFF=y
+
+#
+# PCI IDE chipsets support
+#
+CONFIG_BLK_DEV_IDEPCI=y
+# CONFIG_BLK_DEV_OFFBOARD is not set
+CONFIG_BLK_DEV_GENERIC=m
+CONFIG_BLK_DEV_OPTI621=m
+CONFIG_BLK_DEV_RZ1000=m
+CONFIG_BLK_DEV_IDEDMA_PCI=y
+CONFIG_BLK_DEV_AEC62XX=m
+CONFIG_BLK_DEV_ALI15X3=m
+# CONFIG_WDC_ALI15X3 is not set
+CONFIG_BLK_DEV_AMD74XX=m
+CONFIG_BLK_DEV_ATIIXP=m
+CONFIG_BLK_DEV_CMD64X=m
+CONFIG_BLK_DEV_TRIFLEX=m
+CONFIG_BLK_DEV_CY82C693=m
+CONFIG_BLK_DEV_CS5520=m
+CONFIG_BLK_DEV_CS5530=m
+CONFIG_BLK_DEV_CS5535=m
+CONFIG_BLK_DEV_HPT34X=m
+# CONFIG_HPT34X_AUTODMA is not set
+CONFIG_BLK_DEV_HPT366=m
+CONFIG_BLK_DEV_JMICRON=m
+CONFIG_BLK_DEV_SC1200=m
+CONFIG_BLK_DEV_PIIX=m
+CONFIG_BLK_DEV_IT8213=m
+CONFIG_BLK_DEV_IT821X=m
+CONFIG_BLK_DEV_NS87415=m
+CONFIG_BLK_DEV_PDC202XX_OLD=m
+CONFIG_BLK_DEV_PDC202XX_NEW=m
+CONFIG_BLK_DEV_SVWKS=m
+CONFIG_BLK_DEV_SIIMAGE=m
+CONFIG_BLK_DEV_SIS5513=m
+CONFIG_BLK_DEV_SLC90E66=m
+CONFIG_BLK_DEV_TRM290=m
+CONFIG_BLK_DEV_VIA82CXXX=m
+CONFIG_BLK_DEV_TC86C001=m
+
+#
+# Other IDE chipsets support
+#
+
+#
+# Note: most of these also require special kernel boot parameters
+#
+# CONFIG_BLK_DEV_4DRIVES is not set
+CONFIG_BLK_DEV_ALI14XX=m
+CONFIG_BLK_DEV_DTC2278=m
+CONFIG_BLK_DEV_HT6560B=m
+CONFIG_BLK_DEV_QD65XX=m
+CONFIG_BLK_DEV_UMC8672=m
+CONFIG_BLK_DEV_IDEDMA=y
+CONFIG_IDE_ARCH_OBSOLETE_INIT=y
+# CONFIG_BLK_DEV_HD is not set
+
+#
+# SCSI device support
+#
+CONFIG_RAID_ATTRS=y
+CONFIG_SCSI=m
+CONFIG_SCSI_DMA=y
+# CONFIG_SCSI_TGT is not set
+CONFIG_SCSI_NETLINK=y
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=m
+# CONFIG_CHR_DEV_ST is not set
+# CONFIG_CHR_DEV_OSST is not set
+CONFIG_BLK_DEV_SR=m
+CONFIG_BLK_DEV_SR_VENDOR=y
+CONFIG_CHR_DEV_SG=m
+CONFIG_CHR_DEV_SCH=m
+CONFIG_SCSI_ENCLOSURE=m
+
+#
+# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
+#
+CONFIG_SCSI_MULTI_LUN=y
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+# CONFIG_SCSI_SCAN_ASYNC is not set
+CONFIG_SCSI_WAIT_SCAN=m
+
+#
+# SCSI Transports
+#
+CONFIG_SCSI_SPI_ATTRS=m
+CONFIG_SCSI_FC_ATTRS=m
+CONFIG_SCSI_ISCSI_ATTRS=m
+CONFIG_SCSI_SAS_ATTRS=m
+CONFIG_SCSI_SAS_LIBSAS=m
+CONFIG_SCSI_SAS_ATA=y
+CONFIG_SCSI_SAS_HOST_SMP=y
+CONFIG_SCSI_SAS_LIBSAS_DEBUG=y
+CONFIG_SCSI_SRP_ATTRS=m
+CONFIG_SCSI_LOWLEVEL=y
+CONFIG_ISCSI_TCP=m
+CONFIG_BLK_DEV_3W_XXXX_RAID=m
+CONFIG_SCSI_3W_9XXX=m
+CONFIG_SCSI_7000FASST=m
+CONFIG_SCSI_ACARD=m
+CONFIG_SCSI_AHA152X=m
+CONFIG_SCSI_AHA1542=m
+CONFIG_SCSI_AHA1740=m
+CONFIG_SCSI_AACRAID=m
+CONFIG_SCSI_AIC7XXX=m
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=253
+CONFIG_AIC7XXX_RESET_DELAY_MS=15000
+# CONFIG_AIC7XXX_BUILD_FIRMWARE is not set
+# CONFIG_AIC7XXX_DEBUG_ENABLE is not set
+CONFIG_AIC7XXX_DEBUG_MASK=0
+# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set
+# CONFIG_SCSI_AIC7XXX_OLD is not set
+CONFIG_SCSI_AIC79XX=m
+CONFIG_AIC79XX_CMDS_PER_DEVICE=32
+CONFIG_AIC79XX_RESET_DELAY_MS=15000
+# CONFIG_AIC79XX_BUILD_FIRMWARE is not set
+# CONFIG_AIC79XX_DEBUG_ENABLE is not set
+CONFIG_AIC79XX_DEBUG_MASK=0
+# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
+CONFIG_SCSI_AIC94XX=m
+# CONFIG_AIC94XX_DEBUG is not set
+CONFIG_SCSI_DPT_I2O=m
+CONFIG_SCSI_ADVANSYS=m
+CONFIG_SCSI_IN2000=m
+CONFIG_SCSI_ARCMSR=m
+# CONFIG_SCSI_ARCMSR_AER is not set
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+CONFIG_MEGARAID_SAS=m
+CONFIG_SCSI_HPTIOP=m
+CONFIG_SCSI_BUSLOGIC=m
+# CONFIG_SCSI_OMIT_FLASHPOINT is not set
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_DTC3280=m
+CONFIG_SCSI_EATA=m
+CONFIG_SCSI_EATA_TAGGED_QUEUE=y
+CONFIG_SCSI_EATA_LINKED_COMMANDS=y
+CONFIG_SCSI_EATA_MAX_TAGS=16
+CONFIG_SCSI_FUTURE_DOMAIN=m
+CONFIG_SCSI_FD_MCS=m
+CONFIG_SCSI_GDTH=m
+CONFIG_SCSI_GENERIC_NCR5380=m
+CONFIG_SCSI_GENERIC_NCR5380_MMIO=m
+CONFIG_SCSI_GENERIC_NCR53C400=y
+CONFIG_SCSI_IBMMCA=m
+# CONFIG_IBMMCA_SCSI_ORDER_STANDARD is not set
+# CONFIG_IBMMCA_SCSI_DEV_RESET is not set
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
+CONFIG_SCSI_PPA=m
+CONFIG_SCSI_IMM=m
+# CONFIG_SCSI_IZIP_EPP16 is not set
+# CONFIG_SCSI_IZIP_SLOW_CTR is not set
+CONFIG_SCSI_MVSAS=m
+CONFIG_SCSI_NCR53C406A=m
+CONFIG_SCSI_NCR_D700=m
+CONFIG_SCSI_STEX=m
+CONFIG_SCSI_SYM53C8XX_2=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_SYM53C8XX_MMIO=y
+CONFIG_SCSI_IPR=m
+CONFIG_SCSI_IPR_TRACE=y
+CONFIG_SCSI_IPR_DUMP=y
+CONFIG_SCSI_NCR_Q720=m
+CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=8
+CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32
+CONFIG_SCSI_NCR53C8XX_SYNC=20
+CONFIG_SCSI_PAS16=m
+CONFIG_SCSI_QLOGIC_FAS=m
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_QLA_FC=m
+CONFIG_SCSI_QLA_ISCSI=m
+CONFIG_SCSI_LPFC=m
+CONFIG_SCSI_SIM710=m
+CONFIG_SCSI_SYM53C416=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_DC390T=m
+CONFIG_SCSI_T128=m
+CONFIG_SCSI_U14_34F=m
+CONFIG_SCSI_U14_34F_TAGGED_QUEUE=y
+CONFIG_SCSI_U14_34F_LINKED_COMMANDS=y
+CONFIG_SCSI_U14_34F_MAX_TAGS=8
+CONFIG_SCSI_ULTRASTOR=m
+CONFIG_SCSI_NSP32=m
+# CONFIG_SCSI_DEBUG is not set
+# CONFIG_SCSI_SRP is not set
+CONFIG_SCSI_LOWLEVEL_PCMCIA=y
+CONFIG_PCMCIA_AHA152X=m
+CONFIG_PCMCIA_FDOMAIN=m
+CONFIG_PCMCIA_NINJA_SCSI=m
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+CONFIG_ATA=m
+# CONFIG_ATA_NONSTANDARD is not set
+CONFIG_ATA_ACPI=y
+CONFIG_SATA_AHCI=m
+CONFIG_SATA_SVW=m
+CONFIG_ATA_PIIX=m
+CONFIG_SATA_MV=m
+CONFIG_SATA_NV=m
+CONFIG_PDC_ADMA=m
+CONFIG_SATA_QSTOR=m
+CONFIG_SATA_PROMISE=m
+CONFIG_SATA_SX4=m
+CONFIG_SATA_SIL=m
+CONFIG_SATA_SIL24=m
+CONFIG_SATA_SIS=m
+CONFIG_SATA_ULI=m
+CONFIG_SATA_VIA=m
+CONFIG_SATA_VITESSE=m
+CONFIG_SATA_INIC162X=m
+CONFIG_PATA_ACPI=m
+CONFIG_PATA_ALI=m
+CONFIG_PATA_AMD=m
+CONFIG_PATA_ARTOP=m
+CONFIG_PATA_ATIIXP=m
+CONFIG_PATA_CMD640_PCI=m
+CONFIG_PATA_CMD64X=m
+CONFIG_PATA_CS5520=m
+CONFIG_PATA_CS5530=m
+CONFIG_PATA_CS5535=m
+CONFIG_PATA_CS5536=m
+CONFIG_PATA_CYPRESS=m
+CONFIG_PATA_EFAR=m
+CONFIG_ATA_GENERIC=m
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_HPT37X=m
+CONFIG_PATA_HPT3X2N=m
+CONFIG_PATA_HPT3X3=m
+CONFIG_PATA_HPT3X3_DMA=y
+CONFIG_PATA_ISAPNP=m
+CONFIG_PATA_IT821X=m
+CONFIG_PATA_IT8213=m
+CONFIG_PATA_JMICRON=m
+CONFIG_PATA_LEGACY=m
+CONFIG_PATA_TRIFLEX=m
+CONFIG_PATA_MARVELL=m
+CONFIG_PATA_MPIIX=m
+CONFIG_PATA_OLDPIIX=m
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_NINJA32=m
+CONFIG_PATA_NS87410=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_OPTI=m
+CONFIG_PATA_OPTIDMA=m
+CONFIG_PATA_PCMCIA=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_QDI=m
+CONFIG_PATA_RADISYS=m
+CONFIG_PATA_RZ1000=m
+CONFIG_PATA_SC1200=m
+CONFIG_PATA_SERVERWORKS=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_SIS=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_WINBOND=m
+CONFIG_PATA_WINBOND_VLB=m
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+CONFIG_MD_LINEAR=m
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
+CONFIG_MD_RAID5_RESHAPE=y
+CONFIG_MD_MULTIPATH=m
+# CONFIG_MD_FAULTY is not set
+CONFIG_BLK_DEV_DM=m
+# CONFIG_DM_DEBUG is not set
+CONFIG_DM_CRYPT=m
+CONFIG_DM_SNAPSHOT=m
+CONFIG_DM_MIRROR=m
+CONFIG_DM_ZERO=m
+CONFIG_DM_MULTIPATH=m
+CONFIG_DM_MULTIPATH_EMC=m
+CONFIG_DM_MULTIPATH_RDAC=m
+CONFIG_DM_MULTIPATH_HP=m
+CONFIG_DM_DELAY=m
+CONFIG_DM_UEVENT=y
+CONFIG_FUSION=y
+CONFIG_FUSION_SPI=m
+CONFIG_FUSION_FC=m
+CONFIG_FUSION_SAS=m
+CONFIG_FUSION_MAX_SGE=128
+CONFIG_FUSION_CTL=m
+# CONFIG_FUSION_LOGGING is not set
+
+#
+# IEEE 1394 (FireWire) support
+#
+CONFIG_FIREWIRE=m
+CONFIG_FIREWIRE_OHCI=m
+CONFIG_FIREWIRE_SBP2=m
+CONFIG_IEEE1394=m
+
+#
+# Subsystem Options
+#
+# CONFIG_IEEE1394_VERBOSEDEBUG is not set
+
+#
+# Controllers
+#
+CONFIG_IEEE1394_PCILYNX=m
+CONFIG_IEEE1394_OHCI1394=m
+
+#
+# Protocols
+#
+CONFIG_IEEE1394_VIDEO1394=m
+CONFIG_IEEE1394_SBP2=m
+# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
+CONFIG_IEEE1394_ETH1394_ROM_ENTRY=y
+CONFIG_IEEE1394_ETH1394=m
+# CONFIG_IEEE1394_DV1394 is not set
+CONFIG_IEEE1394_RAWIO=m
+# CONFIG_I2O is not set
+# CONFIG_MACINTOSH_DRIVERS is not set
+CONFIG_NETDEVICES=y
+# CONFIG_NETDEVICES_MULTIQUEUE is not set
+CONFIG_IFB=m
+CONFIG_DUMMY=m
+CONFIG_BONDING=m
+CONFIG_MACVLAN=m
+CONFIG_EQUALIZER=m
+CONFIG_IMQ=m
+# CONFIG_IMQ_BEHAVIOR_AA is not set
+# CONFIG_IMQ_BEHAVIOR_AB is not set
+CONFIG_IMQ_BEHAVIOR_BA=y
+# CONFIG_IMQ_BEHAVIOR_BB is not set
+CONFIG_IMQ_NUM_DEVS=2
+CONFIG_TUN=m
+CONFIG_VETH=m
+CONFIG_NET_SB1000=m
+# CONFIG_ARCNET is not set
+CONFIG_PHYLIB=m
+
+#
+# MII PHY device drivers
+#
+CONFIG_MARVELL_PHY=m
+CONFIG_DAVICOM_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_LXT_PHY=m
+CONFIG_CICADA_PHY=m
+CONFIG_VITESSE_PHY=m
+CONFIG_SMSC_PHY=m
+CONFIG_BROADCOM_PHY=m
+CONFIG_ICPLUS_PHY=m
+CONFIG_REALTEK_PHY=m
+CONFIG_MDIO_BITBANG=m
+CONFIG_NET_ETHERNET=y
+CONFIG_MII=m
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNGEM=m
+CONFIG_CASSINI=m
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_EL1=m
+CONFIG_EL2=m
+CONFIG_ELPLUS=m
+CONFIG_EL16=m
+CONFIG_EL3=m
+CONFIG_3C515=m
+CONFIG_ELMC=m
+CONFIG_ELMC_II=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+CONFIG_LANCE=m
+CONFIG_NET_VENDOR_SMC=y
+CONFIG_WD80x3=m
+CONFIG_ULTRAMCA=m
+CONFIG_ULTRA=m
+CONFIG_ULTRA32=m
+CONFIG_SMC9194=m
+CONFIG_NET_VENDOR_RACAL=y
+CONFIG_NI52=m
+CONFIG_NI65=m
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+# CONFIG_TULIP_NAPI is not set
+CONFIG_DE4X5=m
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_ULI526X=m
+CONFIG_PCMCIA_XIRCOM=m
+CONFIG_AT1700=m
+CONFIG_DEPCA=m
+CONFIG_HP100=m
+CONFIG_NET_ISA=y
+CONFIG_E2100=m
+CONFIG_EWRK3=m
+CONFIG_EEXPRESS=m
+CONFIG_EEXPRESS_PRO=m
+CONFIG_HPLAN_PLUS=m
+CONFIG_HPLAN=m
+CONFIG_LP486E=m
+CONFIG_ETH16I=m
+CONFIG_NE2000=m
+CONFIG_ZNET=m
+CONFIG_SEEQ8005=m
+CONFIG_NE2_MCA=m
+CONFIG_IBMLANA=m
+# CONFIG_IBM_NEW_EMAC_ZMII is not set
+# CONFIG_IBM_NEW_EMAC_RGMII is not set
+# CONFIG_IBM_NEW_EMAC_TAH is not set
+# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
+CONFIG_NET_PCI=y
+CONFIG_PCNET32=m
+# CONFIG_PCNET32_NAPI is not set
+CONFIG_AMD8111_ETH=m
+CONFIG_AMD8111E_NAPI=y
+CONFIG_ADAPTEC_STARFIRE=m
+# CONFIG_ADAPTEC_STARFIRE_NAPI is not set
+CONFIG_AC3200=m
+CONFIG_APRICOT=m
+CONFIG_B44=m
+CONFIG_B44_PCI_AUTOSELECT=y
+CONFIG_B44_PCICORE_AUTOSELECT=y
+CONFIG_B44_PCI=y
+CONFIG_FORCEDETH=m
+# CONFIG_FORCEDETH_NAPI is not set
+CONFIG_CS89x0=m
+CONFIG_EEPRO100=m
+CONFIG_E100=m
+CONFIG_LNE390=m
+CONFIG_FEALNX=m
+CONFIG_NATSEMI=m
+CONFIG_NE2K_PCI=m
+CONFIG_NE3210=m
+CONFIG_ES3210=m
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+# CONFIG_8139TOO_PIO is not set
+CONFIG_8139TOO_TUNE_TWISTER=y
+CONFIG_8139TOO_8129=y
+# CONFIG_8139_OLD_RX_RESET is not set
+CONFIG_R6040=m
+CONFIG_SIS900=m
+CONFIG_EPIC100=m
+CONFIG_SUNDANCE=m
+CONFIG_SUNDANCE_MMIO=y
+CONFIG_TLAN=m
+CONFIG_VIA_RHINE=m
+CONFIG_VIA_RHINE_MMIO=y
+# CONFIG_VIA_RHINE_NAPI is not set
+CONFIG_SC92031=m
+CONFIG_NET_POCKET=y
+CONFIG_ATP=m
+CONFIG_DE600=m
+CONFIG_DE620=m
+CONFIG_NETDEV_1000=y
+CONFIG_ACENIC=m
+# CONFIG_ACENIC_OMIT_TIGON_I is not set
+CONFIG_DL2K=m
+CONFIG_E1000=m
+CONFIG_E1000_NAPI=y
+# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
+CONFIG_E1000E=m
+CONFIG_E1000E_ENABLED=y
+CONFIG_IP1000=m
+CONFIG_IGB=m
+CONFIG_NS83820=m
+CONFIG_HAMACHI=m
+CONFIG_YELLOWFIN=m
+CONFIG_R8169=m
+CONFIG_R8169_NAPI=y
+CONFIG_R8169_VLAN=y
+CONFIG_SIS190=m
+CONFIG_SKGE=m
+CONFIG_SKY2=m
+CONFIG_SK98LIN=m
+CONFIG_VIA_VELOCITY=m
+CONFIG_TIGON3=m
+CONFIG_BNX2=m
+CONFIG_QLA3XXX=m
+CONFIG_ATL1=m
+CONFIG_NETDEV_10000=y
+CONFIG_CHELSIO_T1=m
+CONFIG_CHELSIO_T1_1G=y
+CONFIG_CHELSIO_T1_NAPI=y
+CONFIG_CHELSIO_T3=m
+CONFIG_IXGBE=m
+CONFIG_IXGB=m
+# CONFIG_IXGB_NAPI is not set
+CONFIG_S2IO=m
+# CONFIG_S2IO_NAPI is not set
+CONFIG_MYRI10GE=m
+CONFIG_NETXEN_NIC=m
+CONFIG_NIU=m
+# CONFIG_MLX4_CORE is not set
+CONFIG_TEHUTI=m
+CONFIG_BNX2X=m
+# CONFIG_TR is not set
+
+#
+# Wireless LAN
+#
+# CONFIG_WLAN_PRE80211 is not set
+CONFIG_WLAN_80211=y
+CONFIG_PCMCIA_RAYCS=m
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+# CONFIG_IPW2100_DEBUG is not set
+CONFIG_IPW2200=m
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
+# CONFIG_IPW2200_DEBUG is not set
+CONFIG_LIBERTAS=m
+CONFIG_LIBERTAS_USB=m
+CONFIG_LIBERTAS_CS=m
+CONFIG_LIBERTAS_SDIO=m
+# CONFIG_LIBERTAS_DEBUG is not set
+CONFIG_AIRO=m
+CONFIG_HERMES=m
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_NORTEL_HERMES=m
+CONFIG_PCI_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+CONFIG_PCMCIA_SPECTRUM=m
+CONFIG_ATMEL=m
+CONFIG_PCI_ATMEL=m
+CONFIG_PCMCIA_ATMEL=m
+CONFIG_AIRO_CS=m
+CONFIG_PCMCIA_WL3501=m
+CONFIG_PRISM54=m
+CONFIG_USB_ZD1201=m
+CONFIG_USB_NET_RNDIS_WLAN=m
+CONFIG_RTL8180=m
+CONFIG_RTL8187=m
+CONFIG_ADM8211=m
+CONFIG_P54_COMMON=m
+CONFIG_P54_USB=m
+CONFIG_P54_PCI=m
+# CONFIG_ATH5K is not set
+CONFIG_IWL4965=m
+# CONFIG_IWL4965_QOS is not set
+CONFIG_IWL4965_SPECTRUM_MEASUREMENT=y
+CONFIG_IWL4965_SENSITIVITY=y
+# CONFIG_IWL4965_DEBUG is not set
+CONFIG_IWL3945=m
+# CONFIG_IWL3945_QOS is not set
+CONFIG_IWL3945_SPECTRUM_MEASUREMENT=y
+CONFIG_IWL3945_DEBUG=y
+CONFIG_HOSTAP=m
+CONFIG_HOSTAP_FIRMWARE=y
+# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
+CONFIG_HOSTAP_PLX=m
+CONFIG_HOSTAP_PCI=m
+CONFIG_HOSTAP_CS=m
+# CONFIG_BCM43XX is not set
+CONFIG_B43=m
+CONFIG_B43_PCI_AUTOSELECT=y
+CONFIG_B43_PCICORE_AUTOSELECT=y
+CONFIG_B43_PCMCIA=y
+CONFIG_B43_RFKILL=y
+# CONFIG_B43_DEBUG is not set
+CONFIG_B43LEGACY=m
+CONFIG_B43LEGACY_PCI_AUTOSELECT=y
+CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
+CONFIG_B43LEGACY_RFKILL=y
+# CONFIG_B43LEGACY_DEBUG is not set
+CONFIG_B43LEGACY_DMA=y
+CONFIG_B43LEGACY_PIO=y
+CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
+# CONFIG_B43LEGACY_DMA_MODE is not set
+# CONFIG_B43LEGACY_PIO_MODE is not set
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
+CONFIG_RT2X00=m
+CONFIG_RT2X00_LIB=m
+CONFIG_RT2X00_LIB_PCI=m
+CONFIG_RT2X00_LIB_USB=m
+CONFIG_RT2X00_LIB_FIRMWARE=y
+CONFIG_RT2X00_LIB_RFKILL=y
+CONFIG_RT2400PCI=m
+CONFIG_RT2400PCI_RFKILL=y
+CONFIG_RT2500PCI=m
+CONFIG_RT2500PCI_RFKILL=y
+CONFIG_RT61PCI=m
+CONFIG_RT61PCI_RFKILL=y
+CONFIG_RT2500USB=m
+CONFIG_RT73USB=m
+# CONFIG_RT2X00_DEBUG is not set
+
+#
+# USB Network Adapters
+#
+CONFIG_USB_CATC=m
+CONFIG_USB_KAWETH=m
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_GL620A=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_RNDIS_HOST=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_KC2190=y
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_NET_PCMCIA=y
+CONFIG_PCMCIA_3C589=m
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_FMVJ18X=m
+CONFIG_PCMCIA_PCNET=m
+CONFIG_PCMCIA_NMCLAN=m
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_PCMCIA_XIRC2PS=m
+CONFIG_PCMCIA_AXNET=m
+# CONFIG_WAN is not set
+CONFIG_ATM_DRIVERS=y
+# CONFIG_ATM_DUMMY is not set
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+CONFIG_ATM_ENI_DEBUG=y
+CONFIG_ATM_ENI_TUNE_BURST=y
+CONFIG_ATM_ENI_BURST_TX_16W=y
+CONFIG_ATM_ENI_BURST_TX_8W=y
+CONFIG_ATM_ENI_BURST_TX_4W=y
+CONFIG_ATM_ENI_BURST_TX_2W=y
+CONFIG_ATM_ENI_BURST_RX_16W=y
+CONFIG_ATM_ENI_BURST_RX_8W=y
+CONFIG_ATM_ENI_BURST_RX_4W=y
+CONFIG_ATM_ENI_BURST_RX_2W=y
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+# CONFIG_ATM_ZATM_DEBUG is not set
+CONFIG_ATM_NICSTAR=m
+CONFIG_ATM_NICSTAR_USE_SUNI=y
+CONFIG_ATM_NICSTAR_USE_IDT77105=y
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_IDT77252_USE_SUNI=y
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+CONFIG_ATM_HORIZON=m
+# CONFIG_ATM_HORIZON_DEBUG is not set
+CONFIG_ATM_IA=m
+# CONFIG_ATM_IA_DEBUG is not set
+CONFIG_ATM_FORE200E_MAYBE=m
+CONFIG_ATM_FORE200E_PCA=y
+CONFIG_ATM_FORE200E_PCA_DEFAULT_FW=y
+CONFIG_ATM_FORE200E_USE_TASKLET=y
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_FORE200E=m
+CONFIG_ATM_HE=m
+CONFIG_ATM_HE_USE_SUNI=y
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+# CONFIG_PLIP is not set
+CONFIG_PPP=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_MPPE=m
+CONFIG_PPPOE=m
+CONFIG_PPPOATM=m
+CONFIG_PPPOL2TP=m
+CONFIG_SLIP=m
+CONFIG_SLIP_COMPRESSED=y
+CONFIG_SLHC=m
+CONFIG_SLIP_SMART=y
+CONFIG_SLIP_MODE_SLIP6=y
+# CONFIG_NET_FC is not set
+# CONFIG_NETCONSOLE is not set
+# CONFIG_NETPOLL is not set
+# CONFIG_NET_POLL_CONTROLLER is not set
+CONFIG_VIRTIO_NET=m
+CONFIG_ISDN=m
+# CONFIG_ISDN_I4L is not set
+CONFIG_ISDN_CAPI=m
+CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
+CONFIG_CAPI_TRACE=y
+CONFIG_ISDN_CAPI_MIDDLEWARE=y
+CONFIG_ISDN_CAPI_CAPI20=m
+CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
+CONFIG_ISDN_CAPI_CAPIFS=m
+
+#
+# CAPI hardware drivers
+#
+CONFIG_CAPI_AVM=y
+CONFIG_ISDN_DRV_AVMB1_B1ISA=m
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
+CONFIG_ISDN_DRV_AVMB1_T1ISA=m
+CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
+CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
+CONFIG_CAPI_EICON=y
+CONFIG_ISDN_DIVAS=m
+CONFIG_ISDN_DIVAS_BRIPCI=y
+CONFIG_ISDN_DIVAS_PRIPCI=y
+CONFIG_ISDN_DIVAS_DIVACAPI=m
+CONFIG_ISDN_DIVAS_USERIDI=m
+CONFIG_ISDN_DIVAS_MAINT=m
+
+#
+# Modular ISDN driver
+#
+CONFIG_MISDN_DRV=m
+# CONFIG_MISDN_MEMDEBUG is not set
+CONFIG_MISDN_AVM_FRITZ=y
+CONFIG_MISDN_NETJET=y
+CONFIG_MISDN_HFCPCI=y
+CONFIG_MISDN_HFCMULTI=y
+CONFIG_HFCMULTI_PCIMEM=y
+CONFIG_MISDN_HFCUSB=y
+CONFIG_MISDN_HFCMINI=y
+CONFIG_MISDN_XHFC=y
+CONFIG_MISDN_SPEEDFAX=y
+CONFIG_MISDN_W6692=y
+CONFIG_MISDN_DSP=y
+CONFIG_MISDN_LOOP=y
+CONFIG_MISDN_L1OIP=y
+# CONFIG_PHONE is not set
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+# CONFIG_INPUT_FF_MEMLESS is not set
+CONFIG_INPUT_POLLDEV=m
+
+#
+# Userland interfaces
+#
+CONFIG_INPUT_MOUSEDEV=y
+# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+# CONFIG_INPUT_JOYDEV is not set
+# CONFIG_INPUT_EVDEV is not set
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_SUNKBD=m
+CONFIG_KEYBOARD_LKKBD=m
+CONFIG_KEYBOARD_XTKBD=m
+CONFIG_KEYBOARD_NEWTON=m
+CONFIG_KEYBOARD_STOWAWAY=m
+# CONFIG_INPUT_MOUSE is not set
+# CONFIG_INPUT_JOYSTICK is not set
+# CONFIG_INPUT_TABLET is not set
+# CONFIG_INPUT_TOUCHSCREEN is not set
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_PCSPKR=y
+CONFIG_INPUT_APANEL=m
+# CONFIG_INPUT_WISTRON_BTNS is not set
+# CONFIG_INPUT_ATLAS_BTNS is not set
+CONFIG_INPUT_ATI_REMOTE=m
+CONFIG_INPUT_ATI_REMOTE2=m
+CONFIG_INPUT_KEYSPAN_REMOTE=m
+CONFIG_INPUT_POWERMATE=m
+CONFIG_INPUT_YEALINK=m
+# CONFIG_INPUT_UINPUT is not set
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=y
+# CONFIG_SERIO_CT82C710 is not set
+# CONFIG_SERIO_PARKBD is not set
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=y
+# CONFIG_SERIO_RAW is not set
+# CONFIG_GAMEPORT is not set
+
+#
+# Character devices
+#
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+CONFIG_HW_CONSOLE=y
+# CONFIG_VT_HW_CONSOLE_BINDING is not set
+# CONFIG_SERIAL_NONSTANDARD is not set
+CONFIG_NOZOMI=m
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_SERIAL_8250_PCI=y
+CONFIG_SERIAL_8250_PNP=y
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_MANY_PORTS=y
+CONFIG_SERIAL_8250_FOURPORT=m
+CONFIG_SERIAL_8250_ACCENT=m
+CONFIG_SERIAL_8250_BOCA=m
+CONFIG_SERIAL_8250_EXAR_ST16C554=m
+CONFIG_SERIAL_8250_HUB6=m
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+CONFIG_SERIAL_8250_DETECT_IRQ=y
+CONFIG_SERIAL_8250_RSA=y
+# CONFIG_SERIAL_8250_MCA is not set
+
+#
+# Non-8250 serial port support
+#
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+# CONFIG_SERIAL_JSM is not set
+CONFIG_UNIX98_PTYS=y
+# CONFIG_LEGACY_PTYS is not set
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+CONFIG_PPDEV=m
+CONFIG_HVC_DRIVER=y
+CONFIG_IPMI_HANDLER=m
+CONFIG_IPMI_PANIC_EVENT=y
+# CONFIG_IPMI_PANIC_STRING is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM_INTEL=m
+CONFIG_HW_RANDOM_AMD=m
+CONFIG_HW_RANDOM_GEODE=m
+CONFIG_HW_RANDOM_VIA=m
+CONFIG_NVRAM=m
+CONFIG_RTC=m
+CONFIG_GEN_RTC=m
+# CONFIG_GEN_RTC_X is not set
+# CONFIG_DTLK is not set
+# CONFIG_R3964 is not set
+# CONFIG_APPLICOM is not set
+# CONFIG_SONYPI is not set
+
+#
+# PCMCIA character devices
+#
+CONFIG_SYNCLINK_CS=m
+# CONFIG_CARDMAN_4000 is not set
+# CONFIG_CARDMAN_4040 is not set
+CONFIG_IPWIRELESS=m
+CONFIG_MWAVE=m
+# CONFIG_SCx200_GPIO is not set
+# CONFIG_PC8736x_GPIO is not set
+# CONFIG_NSC_GPIO is not set
+CONFIG_CS5535_GPIO=m
+# CONFIG_RAW_DRIVER is not set
+CONFIG_HPET=y
+# CONFIG_HPET_RTC_IRQ is not set
+CONFIG_HPET_MMAP=y
+CONFIG_HANGCHECK_TIMER=m
+# CONFIG_TCG_TPM is not set
+# CONFIG_TELCLOCK is not set
+CONFIG_DEVPORT=y
+CONFIG_I2C=m
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_CHARDEV=m
+
+#
+# I2C Algorithms
+#
+CONFIG_I2C_ALGOBIT=m
+CONFIG_I2C_ALGOPCF=m
+CONFIG_I2C_ALGOPCA=m
+
+#
+# I2C Hardware Bus support
+#
+CONFIG_I2C_ALI1535=m
+CONFIG_I2C_ALI1563=m
+CONFIG_I2C_ALI15X3=m
+CONFIG_I2C_AMD756=m
+CONFIG_I2C_AMD756_S4882=m
+CONFIG_I2C_AMD8111=m
+CONFIG_I2C_I801=m
+CONFIG_I2C_I810=m
+CONFIG_I2C_PIIX4=m
+CONFIG_I2C_NFORCE2=m
+CONFIG_I2C_OCORES=m
+CONFIG_I2C_PARPORT=m
+CONFIG_I2C_PARPORT_LIGHT=m
+CONFIG_I2C_PROSAVAGE=m
+CONFIG_I2C_SAVAGE4=m
+CONFIG_I2C_SIMTEC=m
+CONFIG_SCx200_ACB=m
+CONFIG_I2C_SIS5595=m
+CONFIG_I2C_SIS630=m
+CONFIG_I2C_SIS96X=m
+# CONFIG_I2C_TAOS_EVM is not set
+CONFIG_I2C_STUB=m
+CONFIG_I2C_TINY_USB=m
+CONFIG_I2C_VIA=m
+CONFIG_I2C_VIAPRO=m
+CONFIG_I2C_VOODOO3=m
+CONFIG_I2C_PCA_ISA=m
+
+#
+# Miscellaneous I2C Chip support
+#
+CONFIG_DS1682=m
+CONFIG_SENSORS_EEPROM=m
+CONFIG_SENSORS_PCF8574=m
+CONFIG_PCF8575=m
+CONFIG_SENSORS_PCF8591=m
+CONFIG_TPS65010=m
+CONFIG_SENSORS_MAX6875=m
+CONFIG_SENSORS_TSL2550=m
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# CONFIG_I2C_DEBUG_CHIP is not set
+
+#
+# SPI support
+#
+# CONFIG_SPI is not set
+# CONFIG_SPI_MASTER is not set
+CONFIG_W1=m
+CONFIG_W1_CON=y
+
+#
+# 1-wire Bus Masters
+#
+CONFIG_W1_MASTER_MATROX=m
+CONFIG_W1_MASTER_DS2490=m
+CONFIG_W1_MASTER_DS2482=m
+
+#
+# 1-wire Slaves
+#
+CONFIG_W1_SLAVE_THERM=m
+CONFIG_W1_SLAVE_SMEM=m
+CONFIG_W1_SLAVE_DS2433=m
+CONFIG_W1_SLAVE_DS2433_CRC=y
+CONFIG_W1_SLAVE_DS2760=m
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+# CONFIG_PDA_POWER is not set
+# CONFIG_BATTERY_DS2760 is not set
+CONFIG_HWMON=m
+CONFIG_HWMON_VID=m
+CONFIG_SENSORS_ABITUGURU=m
+CONFIG_SENSORS_ABITUGURU3=m
+CONFIG_SENSORS_AD7418=m
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1029=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_ADM9240=m
+CONFIG_SENSORS_ADT7470=m
+CONFIG_SENSORS_ADT7473=m
+CONFIG_SENSORS_K8TEMP=m
+CONFIG_SENSORS_ASB100=m
+CONFIG_SENSORS_ATXP1=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_I5K_AMB=m
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_F71882FG=m
+CONFIG_SENSORS_F75375S=m
+CONFIG_SENSORS_FSCHER=m
+CONFIG_SENSORS_FSCPOS=m
+CONFIG_SENSORS_FSCHMD=m
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+CONFIG_SENSORS_CORETEMP=m
+CONFIG_SENSORS_IBMPEX=m
+CONFIG_SENSORS_IT87=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_LM93=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_MAX6650=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PC87427=m
+CONFIG_SENSORS_SIS5595=m
+CONFIG_SENSORS_DME1737=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47M192=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_ADS7828=m
+CONFIG_SENSORS_THMC50=m
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_VT1211=m
+CONFIG_SENSORS_VT8231=m
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83791D=m
+CONFIG_SENSORS_W83792D=m
+CONFIG_SENSORS_W83793=m
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83L786NG=m
+CONFIG_SENSORS_W83627HF=m
+CONFIG_SENSORS_W83627EHF=m
+CONFIG_SENSORS_HDAPS=m
+CONFIG_SENSORS_APPLESMC=m
+# CONFIG_HWMON_DEBUG_CHIP is not set
+CONFIG_THERMAL=y
+CONFIG_WATCHDOG=y
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+
+#
+# Watchdog Device Drivers
+#
+CONFIG_SOFT_WATCHDOG=m
+CONFIG_ACQUIRE_WDT=m
+CONFIG_ADVANTECH_WDT=m
+CONFIG_ALIM1535_WDT=m
+CONFIG_ALIM7101_WDT=m
+CONFIG_SC520_WDT=m
+CONFIG_EUROTECH_WDT=m
+CONFIG_IB700_WDT=m
+CONFIG_IBMASR=m
+CONFIG_WAFER_WDT=m
+CONFIG_I6300ESB_WDT=m
+CONFIG_ITCO_WDT=m
+# CONFIG_ITCO_VENDOR_SUPPORT is not set
+CONFIG_IT8712F_WDT=m
+CONFIG_HP_WATCHDOG=m
+CONFIG_SC1200_WDT=m
+CONFIG_SCx200_WDT=m
+CONFIG_PC87413_WDT=m
+CONFIG_60XX_WDT=m
+CONFIG_SBC8360_WDT=m
+CONFIG_SBC7240_WDT=m
+CONFIG_CPU5_WDT=m
+CONFIG_SMSC37B787_WDT=m
+CONFIG_W83627HF_WDT=m
+CONFIG_W83697HF_WDT=m
+CONFIG_W83877F_WDT=m
+CONFIG_W83977F_WDT=m
+CONFIG_MACHZ_WDT=m
+CONFIG_SBC_EPX_C3_WATCHDOG=m
+
+#
+# ISA-based Watchdog Cards
+#
+# CONFIG_PCWATCHDOG is not set
+# CONFIG_MIXCOMWD is not set
+# CONFIG_WDT is not set
+
+#
+# PCI-based Watchdog Cards
+#
+CONFIG_PCIPCWATCHDOG=m
+CONFIG_WDTPCI=m
+CONFIG_WDT_501_PCI=y
+
+#
+# USB-based Watchdog Cards
+#
+CONFIG_USBPCWATCHDOG=m
+
+#
+# Sonics Silicon Backplane
+#
+CONFIG_SSB_POSSIBLE=y
+CONFIG_SSB=m
+CONFIG_SSB_PCIHOST_POSSIBLE=y
+CONFIG_SSB_PCIHOST=y
+CONFIG_SSB_B43_PCI_BRIDGE=y
+CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
+CONFIG_SSB_PCMCIAHOST=y
+# CONFIG_SSB_DEBUG is not set
+CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
+CONFIG_SSB_DRIVER_PCICORE=y
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_SM501=m
+
+#
+# Multimedia devices
+#
+CONFIG_VIDEO_DEV=m
+CONFIG_VIDEO_V4L2_COMMON=m
+CONFIG_VIDEO_V4L1=y
+CONFIG_VIDEO_V4L1_COMPAT=y
+CONFIG_VIDEO_V4L2=y
+CONFIG_VIDEO_CAPTURE_DRIVERS=y
+# CONFIG_VIDEO_ADV_DEBUG is not set
+CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
+# CONFIG_VIDEO_VIVI is not set
+# CONFIG_VIDEO_BT848 is not set
+# CONFIG_VIDEO_PMS is not set
+# CONFIG_VIDEO_BWQCAM is not set
+# CONFIG_VIDEO_CQCAM is not set
+# CONFIG_VIDEO_W9966 is not set
+# CONFIG_VIDEO_CPIA is not set
+# CONFIG_VIDEO_CPIA2 is not set
+# CONFIG_VIDEO_SAA5246A is not set
+# CONFIG_VIDEO_SAA5249 is not set
+# CONFIG_TUNER_3036 is not set
+# CONFIG_VIDEO_STRADIS is not set
+# CONFIG_VIDEO_ZORAN is not set
+# CONFIG_VIDEO_MEYE is not set
+# CONFIG_VIDEO_SAA7134 is not set
+# CONFIG_VIDEO_MXB is not set
+# CONFIG_VIDEO_DPC is not set
+# CONFIG_VIDEO_HEXIUM_ORION is not set
+# CONFIG_VIDEO_HEXIUM_GEMINI is not set
+# CONFIG_VIDEO_CX88 is not set
+# CONFIG_VIDEO_CX23885 is not set
+# CONFIG_VIDEO_IVTV is not set
+# CONFIG_VIDEO_CAFE_CCIC is not set
+CONFIG_V4L_USB_DRIVERS=y
+# CONFIG_VIDEO_PVRUSB2 is not set
+# CONFIG_VIDEO_EM28XX is not set
+# CONFIG_VIDEO_USBVISION is not set
+# CONFIG_USB_VICAM is not set
+# CONFIG_USB_IBMCAM is not set
+# CONFIG_USB_KONICAWC is not set
+# CONFIG_USB_QUICKCAM_MESSENGER is not set
+# CONFIG_USB_ET61X251 is not set
+# CONFIG_VIDEO_OVCAMCHIP is not set
+# CONFIG_USB_W9968CF is not set
+# CONFIG_USB_OV511 is not set
+# CONFIG_USB_SE401 is not set
+# CONFIG_USB_SN9C102 is not set
+# CONFIG_USB_STV680 is not set
+# CONFIG_USB_ZC0301 is not set
+# CONFIG_USB_PWC is not set
+# CONFIG_USB_ZR364XX is not set
+# CONFIG_USB_STKWEBCAM is not set
+CONFIG_RADIO_ADAPTERS=y
+# CONFIG_RADIO_CADET is not set
+# CONFIG_RADIO_RTRACK is not set
+# CONFIG_RADIO_RTRACK2 is not set
+# CONFIG_RADIO_AZTECH is not set
+# CONFIG_RADIO_GEMTEK is not set
+# CONFIG_RADIO_GEMTEK_PCI is not set
+# CONFIG_RADIO_MAXIRADIO is not set
+# CONFIG_RADIO_MAESTRO is not set
+# CONFIG_RADIO_SF16FMI is not set
+# CONFIG_RADIO_SF16FMR2 is not set
+# CONFIG_RADIO_TERRATEC is not set
+# CONFIG_RADIO_TRUST is not set
+# CONFIG_RADIO_TYPHOON is not set
+# CONFIG_RADIO_ZOLTRIX is not set
+# CONFIG_USB_DSBR is not set
+# CONFIG_USB_SI470X is not set
+CONFIG_DVB_CORE=m
+# CONFIG_DVB_CORE_ATTACH is not set
+CONFIG_DVB_CAPTURE_DRIVERS=y
+
+#
+# Supported SAA7146 based PCI Adapters
+#
+# CONFIG_TTPCI_EEPROM is not set
+# CONFIG_DVB_AV7110 is not set
+# CONFIG_DVB_BUDGET_CORE is not set
+
+#
+# Supported USB Adapters
+#
+# CONFIG_DVB_USB is not set
+# CONFIG_DVB_TTUSB_BUDGET is not set
+# CONFIG_DVB_TTUSB_DEC is not set
+# CONFIG_DVB_CINERGYT2 is not set
+
+#
+# Supported FlexCopII (B2C2) Adapters
+#
+# CONFIG_DVB_B2C2_FLEXCOP is not set
+
+#
+# Supported BT878 Adapters
+#
+
+#
+# Supported Pluto2 Adapters
+#
+# CONFIG_DVB_PLUTO2 is not set
+
+#
+# Supported DVB Frontends
+#
+
+#
+# Customise DVB Frontends
+#
+# CONFIG_DVB_FE_CUSTOMISE is not set
+
+#
+# DVB-S (satellite) frontends
+#
+# CONFIG_DVB_STV0299 is not set
+# CONFIG_DVB_CX24110 is not set
+# CONFIG_DVB_CX24123 is not set
+# CONFIG_DVB_TDA8083 is not set
+# CONFIG_DVB_MT312 is not set
+# CONFIG_DVB_VES1X93 is not set
+# CONFIG_DVB_S5H1420 is not set
+# CONFIG_DVB_TDA10086 is not set
+
+#
+# DVB-T (terrestrial) frontends
+#
+# CONFIG_DVB_SP8870 is not set
+# CONFIG_DVB_SP887X is not set
+# CONFIG_DVB_CX22700 is not set
+# CONFIG_DVB_CX22702 is not set
+# CONFIG_DVB_L64781 is not set
+# CONFIG_DVB_TDA1004X is not set
+# CONFIG_DVB_NXT6000 is not set
+# CONFIG_DVB_MT352 is not set
+# CONFIG_DVB_ZL10353 is not set
+# CONFIG_DVB_DIB3000MB is not set
+# CONFIG_DVB_DIB3000MC is not set
+# CONFIG_DVB_DIB7000M is not set
+# CONFIG_DVB_DIB7000P is not set
+
+#
+# DVB-C (cable) frontends
+#
+# CONFIG_DVB_VES1820 is not set
+# CONFIG_DVB_TDA10021 is not set
+# CONFIG_DVB_TDA10023 is not set
+# CONFIG_DVB_STV0297 is not set
+
+#
+# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
+#
+# CONFIG_DVB_NXT200X is not set
+# CONFIG_DVB_OR51211 is not set
+# CONFIG_DVB_OR51132 is not set
+# CONFIG_DVB_BCM3510 is not set
+# CONFIG_DVB_LGDT330X is not set
+# CONFIG_DVB_S5H1409 is not set
+
+#
+# Tuners/PLL support
+#
+# CONFIG_DVB_PLL is not set
+# CONFIG_DVB_TDA826X is not set
+# CONFIG_DVB_TDA827X is not set
+# CONFIG_DVB_TDA18271 is not set
+# CONFIG_DVB_TUNER_QT1010 is not set
+# CONFIG_DVB_TUNER_MT2060 is not set
+# CONFIG_DVB_TUNER_MT2266 is not set
+# CONFIG_DVB_TUNER_MT2131 is not set
+# CONFIG_DVB_TUNER_DIB0070 is not set
+# CONFIG_DVB_TUNER_XC5000 is not set
+
+#
+# Miscellaneous devices
+#
+# CONFIG_DVB_LNBP21 is not set
+# CONFIG_DVB_ISL6421 is not set
+# CONFIG_DVB_TUA6100 is not set
+CONFIG_DAB=y
+# CONFIG_USB_DABUSB is not set
+
+#
+# Graphics support
+#
+CONFIG_AGP=m
+CONFIG_AGP_ALI=m
+CONFIG_AGP_ATI=m
+CONFIG_AGP_AMD=m
+CONFIG_AGP_AMD64=m
+CONFIG_AGP_INTEL=m
+CONFIG_AGP_NVIDIA=m
+CONFIG_AGP_SIS=m
+CONFIG_AGP_SWORKS=m
+CONFIG_AGP_VIA=m
+CONFIG_AGP_EFFICEON=m
+CONFIG_DRM=m
+CONFIG_DRM_TDFX=m
+CONFIG_DRM_R128=m
+CONFIG_DRM_RADEON=m
+CONFIG_DRM_I810=m
+CONFIG_DRM_I830=m
+CONFIG_DRM_I915=m
+CONFIG_DRM_MGA=m
+CONFIG_DRM_SIS=m
+CONFIG_DRM_VIA=m
+CONFIG_DRM_SAVAGE=m
+CONFIG_VGASTATE=m
+CONFIG_VIDEO_OUTPUT_CONTROL=m
+CONFIG_FB=y
+CONFIG_FIRMWARE_EDID=y
+CONFIG_FB_DDC=m
+CONFIG_FB_CFB_FILLRECT=y
+CONFIG_FB_CFB_COPYAREA=y
+CONFIG_FB_CFB_IMAGEBLIT=y
+# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
+CONFIG_FB_SYS_FILLRECT=m
+CONFIG_FB_SYS_COPYAREA=m
+CONFIG_FB_SYS_IMAGEBLIT=m
+CONFIG_FB_SYS_FOPS=m
+CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_SVGALIB=m
+# CONFIG_FB_MACMODES is not set
+CONFIG_FB_BACKLIGHT=y
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+
+#
+# Frame buffer hardware drivers
+#
+CONFIG_FB_CIRRUS=m
+CONFIG_FB_PM2=m
+CONFIG_FB_PM2_FIFO_DISCONNECT=y
+CONFIG_FB_CYBER2000=m
+# CONFIG_FB_ARC is not set
+CONFIG_FB_ASILIANT=y
+# CONFIG_FB_IMSTT is not set
+# CONFIG_FB_VGA16 is not set
+CONFIG_FB_UVESA=m
+CONFIG_FB_VESA=y
+CONFIG_FB_EFI=y
+CONFIG_FB_HECUBA=m
+# CONFIG_FB_HGA is not set
+# CONFIG_FB_S1D13XXX is not set
+CONFIG_FB_NVIDIA=m
+CONFIG_FB_NVIDIA_I2C=y
+# CONFIG_FB_NVIDIA_DEBUG is not set
+CONFIG_FB_NVIDIA_BACKLIGHT=y
+CONFIG_FB_RIVA=m
+CONFIG_FB_RIVA_I2C=y
+# CONFIG_FB_RIVA_DEBUG is not set
+CONFIG_FB_RIVA_BACKLIGHT=y
+CONFIG_FB_I810=m
+CONFIG_FB_I810_GTF=y
+CONFIG_FB_I810_I2C=y
+CONFIG_FB_LE80578=m
+CONFIG_FB_CARILLO_RANCH=m
+CONFIG_FB_INTEL=m
+# CONFIG_FB_INTEL_DEBUG is not set
+CONFIG_FB_INTEL_I2C=y
+CONFIG_FB_MATROX=m
+CONFIG_FB_MATROX_MILLENIUM=y
+CONFIG_FB_MATROX_MYSTIQUE=y
+CONFIG_FB_MATROX_G=y
+CONFIG_FB_MATROX_I2C=m
+CONFIG_FB_MATROX_MAVEN=m
+CONFIG_FB_MATROX_MULTIHEAD=y
+CONFIG_FB_RADEON=m
+CONFIG_FB_RADEON_I2C=y
+CONFIG_FB_RADEON_BACKLIGHT=y
+# CONFIG_FB_RADEON_DEBUG is not set
+CONFIG_FB_ATY128=m
+CONFIG_FB_ATY128_BACKLIGHT=y
+CONFIG_FB_ATY=m
+CONFIG_FB_ATY_CT=y
+# CONFIG_FB_ATY_GENERIC_LCD is not set
+CONFIG_FB_ATY_GX=y
+CONFIG_FB_ATY_BACKLIGHT=y
+CONFIG_FB_S3=m
+CONFIG_FB_SAVAGE=m
+CONFIG_FB_SAVAGE_I2C=y
+CONFIG_FB_SAVAGE_ACCEL=y
+CONFIG_FB_SIS=m
+CONFIG_FB_SIS_300=y
+CONFIG_FB_SIS_315=y
+CONFIG_FB_NEOMAGIC=m
+CONFIG_FB_KYRO=m
+CONFIG_FB_3DFX=m
+CONFIG_FB_3DFX_ACCEL=y
+CONFIG_FB_VOODOO1=m
+CONFIG_FB_VT8623=m
+CONFIG_FB_CYBLA=m
+CONFIG_FB_TRIDENT=m
+CONFIG_FB_TRIDENT_ACCEL=y
+CONFIG_FB_ARK=m
+CONFIG_FB_PM3=m
+CONFIG_FB_GEODE=y
+CONFIG_FB_GEODE_LX=m
+CONFIG_FB_GEODE_GX=m
+CONFIG_FB_GEODE_GX_SET_FBSIZE=y
+CONFIG_FB_GEODE_GX_FBSIZE=0x1600000
+CONFIG_FB_GEODE_GX1=m
+CONFIG_FB_SM501=m
+# CONFIG_FB_VIRTUAL is not set
+CONFIG_BACKLIGHT_LCD_SUPPORT=y
+CONFIG_LCD_CLASS_DEVICE=m
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+CONFIG_BACKLIGHT_CORGI=m
+CONFIG_BACKLIGHT_PROGEAR=m
+CONFIG_BACKLIGHT_CARILLO_RANCH=m
+
+#
+# Display device support
+#
+CONFIG_DISPLAY_SUPPORT=m
+
+#
+# Display hardware drivers
+#
+
+#
+# Console display driver support
+#
+CONFIG_VGA_CONSOLE=y
+# CONFIG_VGACON_SOFT_SCROLLBACK is not set
+CONFIG_VIDEO_SELECT=y
+# CONFIG_MDA_CONSOLE is not set
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
+# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+# CONFIG_FONTS is not set
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
+CONFIG_LOGO=y
+CONFIG_LOGO_LINUX_MONO=y
+CONFIG_LOGO_LINUX_VGA16=y
+CONFIG_LOGO_LINUX_CLUT224=y
+
+#
+# Sound
+#
+CONFIG_SOUND=m
+
+#
+# Advanced Linux Sound Architecture
+#
+CONFIG_SND=m
+CONFIG_SND_TIMER=m
+CONFIG_SND_PCM=m
+CONFIG_SND_SEQUENCER=m
+# CONFIG_SND_SEQ_DUMMY is not set
+CONFIG_SND_OSSEMUL=y
+CONFIG_SND_MIXER_OSS=m
+CONFIG_SND_PCM_OSS=m
+CONFIG_SND_PCM_OSS_PLUGINS=y
+# CONFIG_SND_SEQUENCER_OSS is not set
+CONFIG_SND_RTCTIMER=m
+CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
+# CONFIG_SND_DYNAMIC_MINORS is not set
+# CONFIG_SND_SUPPORT_OLD_API is not set
+CONFIG_SND_VERBOSE_PROCFS=y
+# CONFIG_SND_VERBOSE_PRINTK is not set
+# CONFIG_SND_DEBUG is not set
+
+#
+# Generic devices
+#
+CONFIG_SND_DUMMY=m
+# CONFIG_SND_VIRMIDI is not set
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_MTS64 is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_MPU401 is not set
+# CONFIG_SND_PORTMAN2X4 is not set
+
+#
+# ISA devices
+#
+# CONFIG_SND_ADLIB is not set
+# CONFIG_SND_AD1816A is not set
+# CONFIG_SND_AD1848 is not set
+# CONFIG_SND_ALS100 is not set
+# CONFIG_SND_AZT2320 is not set
+# CONFIG_SND_CMI8330 is not set
+# CONFIG_SND_CS4231 is not set
+# CONFIG_SND_CS4232 is not set
+# CONFIG_SND_CS4236 is not set
+# CONFIG_SND_DT019X is not set
+# CONFIG_SND_ES968 is not set
+# CONFIG_SND_ES1688 is not set
+# CONFIG_SND_ES18XX is not set
+# CONFIG_SND_SC6000 is not set
+# CONFIG_SND_GUSCLASSIC is not set
+# CONFIG_SND_GUSEXTREME is not set
+# CONFIG_SND_GUSMAX is not set
+# CONFIG_SND_INTERWAVE is not set
+# CONFIG_SND_INTERWAVE_STB is not set
+# CONFIG_SND_OPL3SA2 is not set
+# CONFIG_SND_OPTI92X_AD1848 is not set
+# CONFIG_SND_OPTI92X_CS4231 is not set
+# CONFIG_SND_OPTI93X is not set
+# CONFIG_SND_MIRO is not set
+# CONFIG_SND_SB8 is not set
+# CONFIG_SND_SB16 is not set
+# CONFIG_SND_SBAWE is not set
+# CONFIG_SND_SGALAXY is not set
+# CONFIG_SND_SSCAPE is not set
+# CONFIG_SND_WAVEFRONT is not set
+
+#
+# PCI devices
+#
+# CONFIG_SND_AD1889 is not set
+# CONFIG_SND_ALS300 is not set
+# CONFIG_SND_ALS4000 is not set
+# CONFIG_SND_ALI5451 is not set
+# CONFIG_SND_ATIIXP is not set
+# CONFIG_SND_ATIIXP_MODEM is not set
+# CONFIG_SND_AU8810 is not set
+# CONFIG_SND_AU8820 is not set
+# CONFIG_SND_AU8830 is not set
+# CONFIG_SND_AZT3328 is not set
+# CONFIG_SND_BT87X is not set
+# CONFIG_SND_CA0106 is not set
+# CONFIG_SND_CMIPCI is not set
+# CONFIG_SND_OXYGEN is not set
+# CONFIG_SND_CS4281 is not set
+# CONFIG_SND_CS46XX is not set
+# CONFIG_SND_CS5530 is not set
+# CONFIG_SND_CS5535AUDIO is not set
+# CONFIG_SND_DARLA20 is not set
+# CONFIG_SND_GINA20 is not set
+# CONFIG_SND_LAYLA20 is not set
+# CONFIG_SND_DARLA24 is not set
+# CONFIG_SND_GINA24 is not set
+# CONFIG_SND_LAYLA24 is not set
+# CONFIG_SND_MONA is not set
+# CONFIG_SND_MIA is not set
+# CONFIG_SND_ECHO3G is not set
+# CONFIG_SND_INDIGO is not set
+# CONFIG_SND_INDIGOIO is not set
+# CONFIG_SND_INDIGODJ is not set
+# CONFIG_SND_EMU10K1 is not set
+# CONFIG_SND_EMU10K1X is not set
+# CONFIG_SND_ENS1370 is not set
+# CONFIG_SND_ENS1371 is not set
+# CONFIG_SND_ES1938 is not set
+# CONFIG_SND_ES1968 is not set
+# CONFIG_SND_FM801 is not set
+# CONFIG_SND_HDA_INTEL is not set
+# CONFIG_SND_HDSP is not set
+# CONFIG_SND_HDSPM is not set
+# CONFIG_SND_HIFIER is not set
+# CONFIG_SND_ICE1712 is not set
+# CONFIG_SND_ICE1724 is not set
+# CONFIG_SND_INTEL8X0 is not set
+# CONFIG_SND_INTEL8X0M is not set
+# CONFIG_SND_KORG1212 is not set
+# CONFIG_SND_MAESTRO3 is not set
+# CONFIG_SND_MIXART is not set
+# CONFIG_SND_NM256 is not set
+# CONFIG_SND_PCXHR is not set
+# CONFIG_SND_RIPTIDE is not set
+# CONFIG_SND_RME32 is not set
+# CONFIG_SND_RME96 is not set
+# CONFIG_SND_RME9652 is not set
+# CONFIG_SND_SIS7019 is not set
+# CONFIG_SND_SONICVIBES is not set
+# CONFIG_SND_TRIDENT is not set
+# CONFIG_SND_VIA82XX is not set
+# CONFIG_SND_VIA82XX_MODEM is not set
+# CONFIG_SND_VIRTUOSO is not set
+# CONFIG_SND_VX222 is not set
+# CONFIG_SND_YMFPCI is not set
+
+#
+# USB devices
+#
+# CONFIG_SND_USB_AUDIO is not set
+# CONFIG_SND_USB_USX2Y is not set
+# CONFIG_SND_USB_CAIAQ is not set
+
+#
+# PCMCIA devices
+#
+# CONFIG_SND_VXPOCKET is not set
+# CONFIG_SND_PDAUDIOCF is not set
+
+#
+# System on Chip audio support
+#
+# CONFIG_SND_SOC is not set
+
+#
+# SoC Audio support for SuperH
+#
+
+#
+# ALSA SoC audio for Freescale SOCs
+#
+
+#
+# Open Sound System
+#
+# CONFIG_SOUND_PRIME is not set
+CONFIG_HID_SUPPORT=y
+CONFIG_HID=y
+CONFIG_HID_DEBUG=y
+# CONFIG_HIDRAW is not set
+
+#
+# USB Input Devices
+#
+CONFIG_USB_HID=m
+# CONFIG_USB_HIDINPUT_POWERBOOK is not set
+# CONFIG_HID_FF is not set
+CONFIG_USB_HIDDEV=y
+
+#
+# USB HID Boot Protocol drivers
+#
+# CONFIG_USB_KBD is not set
+# CONFIG_USB_MOUSE is not set
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB_ARCH_HAS_OHCI=y
+CONFIG_USB_ARCH_HAS_EHCI=y
+CONFIG_USB=m
+# CONFIG_USB_DEBUG is not set
+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEVICEFS=y
+CONFIG_USB_DEVICE_CLASS=y
+CONFIG_USB_DYNAMIC_MINORS=y
+CONFIG_USB_SUSPEND=y
+# CONFIG_USB_PERSIST is not set
+# CONFIG_USB_OTG is not set
+
+#
+# USB Host Controller Drivers
+#
+CONFIG_USB_EHCI_HCD=m
+# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
+# CONFIG_USB_EHCI_TT_NEWSCHED is not set
+CONFIG_USB_ISP116X_HCD=m
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_OHCI_HCD_SSB=y
+# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
+# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_U132_HCD=m
+CONFIG_USB_SL811_HCD=m
+# CONFIG_USB_SL811_CS is not set
+CONFIG_USB_R8A66597_HCD=m
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_ACM=m
+CONFIG_USB_PRINTER=m
+
+#
+# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
+#
+
+#
+# may also be needed; see USB_STORAGE Help for more information
+#
+CONFIG_USB_STORAGE=m
+# CONFIG_USB_STORAGE_DEBUG is not set
+# CONFIG_USB_STORAGE_DATAFAB is not set
+CONFIG_USB_STORAGE_FREECOM=y
+CONFIG_USB_STORAGE_ISD200=y
+CONFIG_USB_STORAGE_DPCM=y
+CONFIG_USB_STORAGE_USBAT=y
+CONFIG_USB_STORAGE_SDDR09=y
+CONFIG_USB_STORAGE_SDDR55=y
+CONFIG_USB_STORAGE_JUMPSHOT=y
+CONFIG_USB_STORAGE_ALAUDA=y
+CONFIG_USB_STORAGE_KARMA=y
+# CONFIG_USB_LIBUSUAL is not set
+
+#
+# USB Imaging devices
+#
+# CONFIG_USB_MDC800 is not set
+# CONFIG_USB_MICROTEK is not set
+# CONFIG_USB_MON is not set
+
+#
+# USB port drivers
+#
+CONFIG_USB_USS720=m
+CONFIG_USB_SERIAL=m
+CONFIG_USB_EZUSB=y
+# CONFIG_USB_SERIAL_GENERIC is not set
+CONFIG_USB_SERIAL_AIRCABLE=m
+CONFIG_USB_SERIAL_AIRPRIME=m
+CONFIG_USB_SERIAL_ARK3116=m
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_CH341=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+CONFIG_USB_SERIAL_CP2101=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+CONFIG_USB_SERIAL_EMPEG=m
+CONFIG_USB_SERIAL_FTDI_SIO=m
+# CONFIG_USB_SERIAL_FUNSOFT is not set
+# CONFIG_USB_SERIAL_VISOR is not set
+# CONFIG_USB_SERIAL_IPAQ is not set
+# CONFIG_USB_SERIAL_IR is not set
+CONFIG_USB_SERIAL_EDGEPORT=m
+# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
+CONFIG_USB_SERIAL_GARMIN=m
+CONFIG_USB_SERIAL_IPW=m
+CONFIG_USB_SERIAL_IUU=m
+# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
+# CONFIG_USB_SERIAL_KEYSPAN is not set
+# CONFIG_USB_SERIAL_KLSI is not set
+# CONFIG_USB_SERIAL_KOBIL_SCT is not set
+CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_MOS7720=m
+CONFIG_USB_SERIAL_MOS7840=m
+# CONFIG_USB_SERIAL_NAVMAN is not set
+CONFIG_USB_SERIAL_PL2303=m
+CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_HP4X=m
+CONFIG_USB_SERIAL_SAFE=m
+# CONFIG_USB_SERIAL_SAFE_PADDED is not set
+CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+CONFIG_USB_SERIAL_TI=m
+# CONFIG_USB_SERIAL_CYBERJACK is not set
+CONFIG_USB_SERIAL_XIRCOM=m
+CONFIG_USB_SERIAL_OPTION=m
+# CONFIG_USB_SERIAL_OMNINET is not set
+# CONFIG_USB_SERIAL_DEBUG is not set
+
+#
+# USB Miscellaneous drivers
+#
+CONFIG_USB_EMI62=m
+CONFIG_USB_EMI26=m
+# CONFIG_USB_ADUTUX is not set
+CONFIG_USB_AUERSWALD=m
+# CONFIG_USB_RIO500 is not set
+# CONFIG_USB_LEGOTOWER is not set
+CONFIG_USB_LCD=m
+CONFIG_USB_BERRY_CHARGE=m
+CONFIG_USB_LED=m
+CONFIG_USB_CYPRESS_CY7C63=m
+CONFIG_USB_CYTHERM=m
+# CONFIG_USB_PHIDGET is not set
+# CONFIG_USB_IDMOUSE is not set
+CONFIG_USB_FTDI_ELAN=m
+# CONFIG_USB_APPLEDISPLAY is not set
+CONFIG_USB_SISUSBVGA=m
+CONFIG_USB_SISUSBVGA_CON=y
+# CONFIG_USB_LD is not set
+# CONFIG_USB_TRANCEVIBRATOR is not set
+CONFIG_USB_IOWARRIOR=m
+# CONFIG_USB_TEST is not set
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+CONFIG_USB_CXACRU=m
+CONFIG_USB_UEAGLEATM=m
+CONFIG_USB_XUSBATM=m
+# CONFIG_USB_GADGET is not set
+CONFIG_MMC=m
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_UNSAFE_RESUME is not set
+
+#
+# MMC/SD Card Drivers
+#
+CONFIG_MMC_BLOCK=m
+CONFIG_MMC_BLOCK_BOUNCE=y
+CONFIG_SDIO_UART=m
+
+#
+# MMC/SD Host Controller Drivers
+#
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_RICOH_MMC=m
+CONFIG_MMC_WBSD=m
+CONFIG_MMC_TIFM_SD=m
+CONFIG_MEMSTICK=m
+# CONFIG_MEMSTICK_DEBUG is not set
+
+#
+# MemoryStick drivers
+#
+# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
+CONFIG_MSPRO_BLOCK=m
+
+#
+# MemoryStick Host Controller Drivers
+#
+CONFIG_MEMSTICK_TIFM_MS=m
+CONFIG_MEMSTICK_JMICRON_38X=m
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=m
+
+#
+# LED drivers
+#
+CONFIG_LEDS_CLEVO_MAIL=m
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=m
+CONFIG_LEDS_TRIGGER_IDE_DISK=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=m
+# CONFIG_INFINIBAND is not set
+# CONFIG_EDAC is not set
+CONFIG_RTC_LIB=m
+CONFIG_RTC_CLASS=m
+
+#
+# Conflicting RTC option has been selected, check GEN_RTC and RTC
+#
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+CONFIG_RTC_DRV_TEST=m
+
+#
+# I2C RTC drivers
+#
+CONFIG_RTC_DRV_DS1307=m
+CONFIG_RTC_DRV_DS1374=m
+CONFIG_RTC_DRV_DS1672=m
+CONFIG_RTC_DRV_MAX6900=m
+CONFIG_RTC_DRV_RS5C372=m
+CONFIG_RTC_DRV_ISL1208=m
+CONFIG_RTC_DRV_X1205=m
+CONFIG_RTC_DRV_PCF8563=m
+CONFIG_RTC_DRV_PCF8583=m
+CONFIG_RTC_DRV_M41T80=m
+# CONFIG_RTC_DRV_M41T80_WDT is not set
+CONFIG_RTC_DRV_S35390A=m
+
+#
+# SPI RTC drivers
+#
+
+#
+# Platform RTC drivers
+#
+CONFIG_RTC_DRV_CMOS=m
+CONFIG_RTC_DRV_DS1511=m
+CONFIG_RTC_DRV_DS1553=m
+CONFIG_RTC_DRV_DS1742=m
+CONFIG_RTC_DRV_STK17TA8=m
+CONFIG_RTC_DRV_M48T86=m
+CONFIG_RTC_DRV_M48T59=m
+CONFIG_RTC_DRV_V3020=m
+
+#
+# on-CPU RTC drivers
+#
+CONFIG_DMADEVICES=y
+
+#
+# DMA Devices
+#
+CONFIG_INTEL_IOATDMA=m
+CONFIG_DMA_ENGINE=y
+
+#
+# DMA Clients
+#
+CONFIG_NET_DMA=y
+CONFIG_DCA=m
+# CONFIG_AUXDISPLAY is not set
+
+#
+# Userspace I/O
+#
+CONFIG_UIO=m
+CONFIG_UIO_CIF=m
+
+#
+# Firmware Drivers
+#
+# CONFIG_EDD is not set
+# CONFIG_DELL_RBU is not set
+# CONFIG_DCDBAS is not set
+CONFIG_DMIID=y
+
+#
+# File systems
+#
+CONFIG_EXT2_FS=m
+CONFIG_EXT2_FS_XATTR=y
+CONFIG_EXT2_FS_POSIX_ACL=y
+CONFIG_EXT2_FS_SECURITY=y
+# CONFIG_EXT2_FS_XIP is not set
+CONFIG_EXT3_FS=m
+CONFIG_EXT3_FS_XATTR=y
+CONFIG_EXT3_FS_POSIX_ACL=y
+CONFIG_EXT3_FS_SECURITY=y
+# CONFIG_EXT4DEV_FS is not set
+CONFIG_JBD=m
+CONFIG_FS_MBCACHE=m
+CONFIG_REISER4_FS=m
+# CONFIG_REISER4_DEBUG is not set
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+CONFIG_REISERFS_PROC_INFO=y
+CONFIG_REISERFS_FS_XATTR=y
+CONFIG_REISERFS_FS_POSIX_ACL=y
+CONFIG_REISERFS_FS_SECURITY=y
+CONFIG_JFS_FS=m
+CONFIG_JFS_POSIX_ACL=y
+CONFIG_JFS_SECURITY=y
+# CONFIG_JFS_DEBUG is not set
+CONFIG_JFS_STATISTICS=y
+CONFIG_FS_POSIX_ACL=y
+CONFIG_XFS_FS=m
+CONFIG_XFS_QUOTA=y
+# CONFIG_XFS_SECURITY is not set
+CONFIG_XFS_POSIX_ACL=y
+# CONFIG_XFS_RT is not set
+# CONFIG_GFS2_FS is not set
+# CONFIG_OCFS2_FS is not set
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY=y
+CONFIG_INOTIFY_USER=y
+# CONFIG_QUOTA is not set
+CONFIG_QUOTACTL=y
+CONFIG_AUTOFS_FS=m
+CONFIG_AUTOFS4_FS=m
+CONFIG_FUSE_FS=m
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+# CONFIG_ZISOFS is not set
+CONFIG_UDF_FS=m
+CONFIG_UDF_NLS=y
+
+#
+# DOS/FAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+# CONFIG_MSDOS_FS is not set
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=850
+CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
+# CONFIG_NTFS_FS is not set
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+# CONFIG_PROC_KCORE is not set
+CONFIG_PROC_SYSCTL=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+# CONFIG_TMPFS_POSIX_ACL is not set
+# CONFIG_HUGETLBFS is not set
+# CONFIG_HUGETLB_PAGE is not set
+# CONFIG_CONFIGFS_FS is not set
+
+#
+# Miscellaneous filesystems
+#
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+CONFIG_ECRYPT_FS=m
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+CONFIG_JFFS2_FS=m
+CONFIG_JFFS2_FS_DEBUG=0
+CONFIG_JFFS2_FS_WRITEBUFFER=y
+# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
+# CONFIG_JFFS2_SUMMARY is not set
+# CONFIG_JFFS2_FS_XATTR is not set
+CONFIG_JFFS2_COMPRESSION_OPTIONS=y
+CONFIG_JFFS2_ZLIB=y
+# CONFIG_JFFS2_LZO is not set
+CONFIG_JFFS2_RTIME=y
+CONFIG_JFFS2_RUBIN=y
+# CONFIG_JFFS2_CMODE_NONE is not set
+CONFIG_JFFS2_CMODE_PRIORITY=y
+# CONFIG_JFFS2_CMODE_SIZE is not set
+# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
+# CONFIG_CRAMFS is not set
+CONFIG_SQUASHFS=y
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=m
+CONFIG_NFS_V3=y
+# CONFIG_NFS_V3_ACL is not set
+CONFIG_NFS_V4=y
+# CONFIG_NFS_DIRECTIO is not set
+CONFIG_NFSD=m
+CONFIG_NFSD_V3=y
+# CONFIG_NFSD_V3_ACL is not set
+# CONFIG_NFSD_V4 is not set
+CONFIG_NFSD_TCP=y
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_EXPORTFS=m
+CONFIG_NFS_COMMON=y
+CONFIG_SUNRPC=m
+CONFIG_SUNRPC_GSS=m
+# CONFIG_SUNRPC_BIND34 is not set
+CONFIG_RPCSEC_GSS_KRB5=m
+# CONFIG_RPCSEC_GSS_SPKM3 is not set
+CONFIG_SMB_FS=m
+# CONFIG_SMB_NLS_DEFAULT is not set
+CONFIG_CIFS=m
+CONFIG_CIFS_STATS=y
+CONFIG_CIFS_STATS2=y
+# CONFIG_CIFS_WEAK_PW_HASH is not set
+CONFIG_CIFS_XATTR=y
+# CONFIG_CIFS_POSIX is not set
+# CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_EXPERIMENTAL is not set
+# CONFIG_NCP_FS is not set
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+
+#
+# Partition Types
+#
+# CONFIG_PARTITION_ADVANCED is not set
+CONFIG_MSDOS_PARTITION=y
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="cp850"
+# CONFIG_NLS_CODEPAGE_437 is not set
+# CONFIG_NLS_CODEPAGE_737 is not set
+# CONFIG_NLS_CODEPAGE_775 is not set
+CONFIG_NLS_CODEPAGE_850=y
+# CONFIG_NLS_CODEPAGE_852 is not set
+# CONFIG_NLS_CODEPAGE_855 is not set
+# CONFIG_NLS_CODEPAGE_857 is not set
+# CONFIG_NLS_CODEPAGE_860 is not set
+# CONFIG_NLS_CODEPAGE_861 is not set
+# CONFIG_NLS_CODEPAGE_862 is not set
+# CONFIG_NLS_CODEPAGE_863 is not set
+# CONFIG_NLS_CODEPAGE_864 is not set
+# CONFIG_NLS_CODEPAGE_865 is not set
+# CONFIG_NLS_CODEPAGE_866 is not set
+# CONFIG_NLS_CODEPAGE_869 is not set
+# CONFIG_NLS_CODEPAGE_936 is not set
+# CONFIG_NLS_CODEPAGE_950 is not set
+# CONFIG_NLS_CODEPAGE_932 is not set
+# CONFIG_NLS_CODEPAGE_949 is not set
+# CONFIG_NLS_CODEPAGE_874 is not set
+# CONFIG_NLS_ISO8859_8 is not set
+# CONFIG_NLS_CODEPAGE_1250 is not set
+# CONFIG_NLS_CODEPAGE_1251 is not set
+# CONFIG_NLS_ASCII is not set
+CONFIG_NLS_ISO8859_1=y
+# CONFIG_NLS_ISO8859_2 is not set
+# CONFIG_NLS_ISO8859_3 is not set
+# CONFIG_NLS_ISO8859_4 is not set
+# CONFIG_NLS_ISO8859_5 is not set
+# CONFIG_NLS_ISO8859_6 is not set
+# CONFIG_NLS_ISO8859_7 is not set
+# CONFIG_NLS_ISO8859_9 is not set
+# CONFIG_NLS_ISO8859_13 is not set
+# CONFIG_NLS_ISO8859_14 is not set
+# CONFIG_NLS_ISO8859_15 is not set
+# CONFIG_NLS_KOI8_R is not set
+# CONFIG_NLS_KOI8_U is not set
+CONFIG_NLS_UTF8=y
+# CONFIG_DLM is not set
+
+#
+# Kernel hacking
+#
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+# CONFIG_PRINTK_TIME is not set
+# CONFIG_ENABLE_WARN_DEPRECATED is not set
+CONFIG_ENABLE_MUST_CHECK=y
+# CONFIG_MAGIC_SYSRQ is not set
+CONFIG_UNUSED_SYMBOLS=y
+# CONFIG_DEBUG_FS is not set
+# CONFIG_HEADERS_CHECK is not set
+# CONFIG_DEBUG_KERNEL is not set
+CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_LATENCYTOP is not set
+# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
+# CONFIG_SAMPLES is not set
+CONFIG_EARLY_PRINTK=y
+CONFIG_X86_FIND_SMP_CONFIG=y
+CONFIG_X86_MPPARSE=y
+CONFIG_DOUBLEFAULT=y
+CONFIG_IO_DELAY_TYPE_0X80=0
+CONFIG_IO_DELAY_TYPE_0XED=1
+CONFIG_IO_DELAY_TYPE_UDELAY=2
+CONFIG_IO_DELAY_TYPE_NONE=3
+CONFIG_IO_DELAY_0X80=y
+# CONFIG_IO_DELAY_0XED is not set
+# CONFIG_IO_DELAY_UDELAY is not set
+# CONFIG_IO_DELAY_NONE is not set
+CONFIG_DEFAULT_IO_DELAY_TYPE=0
+
+#
+# Security options
+#
+CONFIG_KEYS=y
+# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
+# CONFIG_SECURITY is not set
+# CONFIG_SECURITY_FILE_CAPABILITIES is not set
+CONFIG_XOR_BLOCKS=m
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
+CONFIG_CRYPTO=y
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_BLKCIPHER=m
+CONFIG_CRYPTO_SEQIV=m
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_HMAC=y
+CONFIG_CRYPTO_XCBC=m
+# CONFIG_CRYPTO_NULL is not set
+# CONFIG_CRYPTO_MD4 is not set
+CONFIG_CRYPTO_MD5=m
+CONFIG_CRYPTO_SHA1=m
+CONFIG_CRYPTO_SHA256=m
+CONFIG_CRYPTO_SHA512=m
+CONFIG_CRYPTO_WP512=m
+CONFIG_CRYPTO_TGR192=m
+CONFIG_CRYPTO_GF128MUL=m
+CONFIG_CRYPTO_ECB=m
+CONFIG_CRYPTO_CBC=m
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_LRW=m
+CONFIG_CRYPTO_XTS=m
+CONFIG_CRYPTO_CTR=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_CRYPTD=m
+CONFIG_CRYPTO_DES=m
+CONFIG_CRYPTO_FCRYPT=m
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_TWOFISH_COMMON=m
+CONFIG_CRYPTO_TWOFISH_586=m
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_AES=m
+CONFIG_CRYPTO_AES_586=m
+CONFIG_CRYPTO_CAST5=m
+CONFIG_CRYPTO_CAST6=m
+CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_ARC4=m
+CONFIG_CRYPTO_KHAZAD=m
+CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SALSA20=m
+CONFIG_CRYPTO_SALSA20_586=m
+CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_MICHAEL_MIC=m
+CONFIG_CRYPTO_CRC32C=m
+CONFIG_CRYPTO_CAMELLIA=m
+# CONFIG_CRYPTO_TEST is not set
+CONFIG_CRYPTO_AUTHENC=m
+CONFIG_CRYPTO_LZO=m
+CONFIG_CRYPTO_HW=y
+CONFIG_CRYPTO_DEV_PADLOCK=m
+CONFIG_CRYPTO_DEV_PADLOCK_AES=m
+CONFIG_CRYPTO_DEV_PADLOCK_SHA=m
+CONFIG_CRYPTO_DEV_GEODE=m
+CONFIG_CRYPTO_DEV_HIFN_795X=m
+CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y
+CONFIG_HAVE_KVM=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=m
+CONFIG_KVM_INTEL=m
+CONFIG_KVM_AMD=m
+CONFIG_LGUEST=m
+CONFIG_VIRTIO=m
+CONFIG_VIRTIO_RING=m
+CONFIG_VIRTIO_PCI=m
+CONFIG_VIRTIO_BALLOON=m
+
+#
+# Library routines
+#
+CONFIG_BITREVERSE=y
+CONFIG_CRC_CCITT=m
+CONFIG_CRC16=m
+CONFIG_CRC_ITU_T=m
+CONFIG_CRC32=y
+CONFIG_CRC7=m
+CONFIG_LIBCRC32C=m
+CONFIG_AUDIT_GENERIC=y
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=m
+CONFIG_LZO_DECOMPRESS=m
+CONFIG_TEXTSEARCH=y
+CONFIG_TEXTSEARCH_KMP=m
+CONFIG_TEXTSEARCH_BM=m
+CONFIG_TEXTSEARCH_FSM=m
+CONFIG_PLIST=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
+CONFIG_CHECK_SIGNATURE=y
index f1f44be18fd60fef90a38abeffa10b66c6d66fab..daf5f49a8cf3bfc3521bc5d95d1cec1172a04c66 100644 (file)
                                };
     $substatus->{'50.networkred'} = {
                                'caption' => "$Lang::tr{'network red'}",
-                               'uri' => '/cgi-bin/network.cgi',
-                               'vars' => 'network=red',
+                               'uri' => '/cgi-bin/netexternal.cgi',
                                'title' => "$Lang::tr{'network red'}",
                                'enabled' => 1,
                          };
     $substatus->{'51.networkinternal'} = {
                                'caption' => "$Lang::tr{'network internal'}",
-                               'uri' => '/cgi-bin/network.cgi',
-                               'vars' => 'network=internal',
+                               'uri' => '/cgi-bin/netinternal.cgi',
                                'title' => "$Lang::tr{'network internal'}",
                                'enabled' => 1,
                          };
     $substatus->{'52.networkother'} = {
                                'caption' => "$Lang::tr{'network other'}",
-                               'uri' => '/cgi-bin/network.cgi',
-                               'vars' => 'network=other',
+                               'uri' => '/cgi-bin/netother.cgi',
                                'title' => "$Lang::tr{'network other'}",
                                'enabled' => 1,
                          };
index 2859cfb6da135f8b67fd65c58f8d54c151c327f0..95b6530528ad0f517bf18018a207378e5b801bff 100644 (file)
@@ -1,5 +1,5 @@
-    $subipfire->{'54.wlanap'} = {'caption' => wlanap,
+    $subipfire->{'54.wlanap'} = {'caption' => WLanAP,
                                  'uri' => '/cgi-bin/wlanap.cgi',
-                                 'title' => wlanap,
+                                 'title' => WLanAP,
                                  'enabled' => 1,
                                  };
index 61ba23fc603daef239938e7701d1978bbb7277e0..6ec429932c4a45918ea4348c649ad50dec7159c8 100644 (file)
@@ -1268,8 +1268,7 @@ srv/web/ipfire/cgi-bin/dhcp.cgi
 #srv/web/ipfire/cgi-bin/dial/index.cgi
 srv/web/ipfire/cgi-bin/dmzholes.cgi
 srv/web/ipfire/cgi-bin/extrahd.cgi
-srv/web/ipfire/cgi-bin/fwhits.cgi
-srv/web/ipfire/cgi-bin/graphs.cgi
+#srv/web/ipfire/cgi-bin/graphs.cgi
 srv/web/ipfire/cgi-bin/gui.cgi
 srv/web/ipfire/cgi-bin/hardwaregraphs.cgi
 srv/web/ipfire/cgi-bin/hosts.cgi
@@ -1293,7 +1292,9 @@ srv/web/ipfire/cgi-bin/logs.cgi
 srv/web/ipfire/cgi-bin/media.cgi
 srv/web/ipfire/cgi-bin/memory.cgi
 srv/web/ipfire/cgi-bin/modem.cgi
-srv/web/ipfire/cgi-bin/network.cgi
+srv/web/ipfire/cgi-bin/netexternal.cgi
+srv/web/ipfire/cgi-bin/netinternal.cgi
+srv/web/ipfire/cgi-bin/netother.cgi
 srv/web/ipfire/cgi-bin/networks.cgi
 srv/web/ipfire/cgi-bin/outgoingfw.cgi
 srv/web/ipfire/cgi-bin/ovpnmain.cgi
@@ -1301,16 +1302,14 @@ srv/web/ipfire/cgi-bin/pakfire.cgi
 srv/web/ipfire/cgi-bin/portfw.cgi
 srv/web/ipfire/cgi-bin/pppsetup.cgi
 srv/web/ipfire/cgi-bin/proxy.cgi
-srv/web/ipfire/cgi-bin/proxygraphs.cgi
 srv/web/ipfire/cgi-bin/qos.cgi
-srv/web/ipfire/cgi-bin/qosgraph.cgi
+#srv/web/ipfire/cgi-bin/qosgraph.cgi
 srv/web/ipfire/cgi-bin/remote.cgi
 srv/web/ipfire/cgi-bin/services.cgi
 srv/web/ipfire/cgi-bin/speed.cgi
 srv/web/ipfire/cgi-bin/system.cgi
 srv/web/ipfire/cgi-bin/time.cgi
 srv/web/ipfire/cgi-bin/traffic.cgi
-srv/web/ipfire/cgi-bin/traffics.cgi
 srv/web/ipfire/cgi-bin/updatexlrator.cgi
 srv/web/ipfire/cgi-bin/upnp.cgi
 srv/web/ipfire/cgi-bin/urlfilter.cgi
diff --git a/config/rootfiles/common/atl2-2.0.4 b/config/rootfiles/common/atl2-2.0.4
new file mode 100644 (file)
index 0000000..c44c669
--- /dev/null
@@ -0,0 +1 @@
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/net/atl2.ko
index 7e66e800bebb805a22388a08b03c7b29f1ccb971..d5824075d967d5c54e613711a041f37c66e73417 100644 (file)
@@ -1,4 +1,6 @@
 #var/ipfire/backup/addons
+var/ipfire/backup/addons/backup
+var/ipfire/backup/addons/includes
 #var/ipfire/backup/bin
 var/ipfire/backup/bin/backup.pl
 var/ipfire/backup/exclude
index 6492e4522efdc8f815275dac1dbabe0537084502..2105ac92818e9090138fba2eb61979c033025a70 100644 (file)
@@ -1,12 +1,12 @@
 #usr/bin/cdda2wav
-#usr/bin/cdrecord
+usr/bin/cdrecord
 #usr/bin/devdump
 #usr/bin/isodebug
 #usr/bin/isodump
 #usr/bin/isoinfo
 #usr/bin/isovfy
 #usr/bin/mkhybrid
-#usr/bin/mkisofs
+usr/bin/mkisofs
 #usr/bin/readcd
 #usr/bin/scgcheck
 #usr/bin/skel
index 836f26dc21921ce0a3116619179229d1b0c6758e..f2834313149eb9e3171f1be63fe75a65ff24f8f4 100644 (file)
@@ -5,31 +5,42 @@ etc/rc.d/helper/getdnsfromdhcpc.pl
 etc/rc.d/helper/writeipac.pl
 #etc/rc.d/init.d
 #etc/rc.d/init.d/alsa
+#etc/rc.d/init.d/amavisd
 etc/rc.d/init.d/apache
 #etc/rc.d/init.d/applejuice
+#etc/rc.d/init.d/asterisk
 etc/rc.d/init.d/beep
+#etc/rc.d/init.d/bluetooth
 etc/rc.d/init.d/checkfs
 etc/rc.d/init.d/checkfstab
 #etc/rc.d/init.d/clamav
 etc/rc.d/init.d/cleanfs
+etc/rc.d/init.d/collectd
 etc/rc.d/init.d/connectd
 etc/rc.d/init.d/console
+#etc/rc.d/init.d/cpufreq
 #etc/rc.d/init.d/cups
 #etc/rc.d/init.d/cyrus-imapd
 #etc/rc.d/init.d/cyrus-sasl
 etc/rc.d/init.d/dhcp
 etc/rc.d/init.d/dnsmasq
 etc/rc.d/init.d/fcron
+#etc/rc.d/init.d/fetchmail
 etc/rc.d/init.d/firewall
 etc/rc.d/init.d/functions
+#etc/rc.d/init.d/gnump3d
 etc/rc.d/init.d/halt
+#etc/rc.d/init.d/hostapd
 #etc/rc.d/init.d/ipfireseeder
 etc/rc.d/init.d/ipsec
 etc/rc.d/init.d/localnet
+#etc/rc.d/init.d/messagebus
+#etc/rc.d/init.d/mldonkey
 etc/rc.d/init.d/mISDN
 etc/rc.d/init.d/modules
 etc/rc.d/init.d/mountfs
 etc/rc.d/init.d/mountkernfs
+#etc/rc.d/init.d/mpd
 #etc/rc.d/init.d/mysql
 etc/rc.d/init.d/network
 #etc/rc.d/init.d/networking
@@ -69,9 +80,12 @@ etc/rc.d/init.d/random
 etc/rc.d/init.d/rc
 etc/rc.d/init.d/reboot
 #etc/rc.d/init.d/samba
+#etc/rc.d/init.d/sane
 etc/rc.d/init.d/sendsignals
 etc/rc.d/init.d/setclock
+etc/rc.d/init.d/smartenabler
 etc/rc.d/init.d/snort
+#etc/rc.d/init.d/spamassassin
 etc/rc.d/init.d/squid
 etc/rc.d/init.d/sshd
 etc/rc.d/init.d/swap
@@ -79,9 +93,11 @@ etc/rc.d/init.d/sysctl
 etc/rc.d/init.d/sysklogd
 etc/rc.d/init.d/teamspeak
 etc/rc.d/init.d/template
+#etc/rc.d/init.d/tftpd
 etc/rc.d/init.d/udev
 etc/rc.d/init.d/udev_retry
 etc/rc.d/init.d/upnpd
+#etc/rc.d/init.d/vdr
 #etc/rc.d/init.d/vsftpd
 #etc/rc.d/init.d/winbind
 #etc/rc.d/init.d/xinetd
@@ -91,6 +107,8 @@ etc/rc.d/rc0.d/K28apache
 etc/rc.d/rc0.d/K30sshd
 etc/rc.d/rc0.d/K45random
 etc/rc.d/rc0.d/K80network
+#etc/rc.d/rc0.d/K84bluetooth
+#etc/rc.d/rc0.d/K85messagebus
 etc/rc.d/rc0.d/K90sysklogd
 etc/rc.d/rc0.d/K99beep
 etc/rc.d/rc0.d/S60sendsignals
@@ -100,6 +118,10 @@ etc/rc.d/rc0.d/S90swap
 etc/rc.d/rc0.d/S99halt
 #etc/rc.d/rc3.d
 etc/rc.d/rc3.d/S10sysklogd
+#etc/rc.d/rc3.d/S15messagebus
+#etc/rc.d/rc3.d/S16bluetooth
+#etc/rc.d/rc3.d/S18cpufreq
+etc/rc.d/rc3.d/S19smartenabler
 etc/rc.d/rc3.d/S20network
 etc/rc.d/rc3.d/S25random
 etc/rc.d/rc3.d/S30sshd
@@ -113,6 +135,8 @@ etc/rc.d/rc6.d/K28apache
 etc/rc.d/rc6.d/K30sshd
 etc/rc.d/rc6.d/K45random
 etc/rc.d/rc6.d/K80network
+#etc/rc.d/rc6.d/K84bluetooth
+#etc/rc.d/rc6.d/K85messagebus
 etc/rc.d/rc6.d/K90sysklogd
 etc/rc.d/rc6.d/K99beep
 etc/rc.d/rc6.d/S60sendsignals
diff --git a/config/rootfiles/common/linux25 b/config/rootfiles/common/linux25
new file mode 100644 (file)
index 0000000..21678c1
--- /dev/null
@@ -0,0 +1,1302 @@
+boot/System.map-2.6.25.17-ipfire
+boot/vmlinuz-2.6.25.17-ipfire
+lib/modules/2.6.25.17-ipfire
+#lib/modules/2.6.25.17-ipfire/build
+#lib/modules/2.6.25.17-ipfire/kernel
+#lib/modules/2.6.25.17-ipfire/kernel/arch
+#lib/modules/2.6.25.17-ipfire/kernel/arch/i386
+#lib/modules/2.6.25.17-ipfire/kernel/arch/i386/kernel
+#lib/modules/2.6.25.17-ipfire/kernel/arch/i386/kernel/apm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/arch/i386/kernel/cpu
+#lib/modules/2.6.25.17-ipfire/kernel/arch/i386/kernel/cpu/mcheck
+#lib/modules/2.6.25.17-ipfire/kernel/arch/i386/kernel/cpu/mcheck/non-fatal.ko
+#lib/modules/2.6.25.17-ipfire/kernel/crypto
+#lib/modules/2.6.25.17-ipfire/kernel/crypto/aes.ko
+#lib/modules/2.6.25.17-ipfire/kernel/crypto/arc4.ko
+#lib/modules/2.6.25.17-ipfire/kernel/crypto/michael_mic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi/ac.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi/battery.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi/button.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi/fan.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi/ibm_acpi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi/processor.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi/thermal.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/acpi/video.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/ambassador.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/atmtcp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/eni.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/firestream.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/fore_200e.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/he.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/horizon.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/idt77105.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/idt77252.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/iphase.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/lanai.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/nicstar.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/suni.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/uPD98402.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/atm/zatm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/base
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/base/firmware_class.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/block
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/block/DAC960.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/block/cciss.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/block/cpqarray.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/block/cryptoloop.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/block/sx8.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/block/ub.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/bcm203x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/bfusb.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/bluecard_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/bpa10x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/bt3c_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/btuart_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/dtl1_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/hci_uart.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/hci_usb.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/bluetooth/hci_vhci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom/aztcd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom/cdrom.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom/gscd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom/isp16.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom/mcdx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom/optcd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom/sjcd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/cdrom/sonycd535.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/cyclades.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/epca.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/generic_serial.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/ipmi
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/ipmi/ipmi_devintf.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/ipmi/ipmi_msghandler.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/ipmi/ipmi_poweroff.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/ipmi/ipmi_si.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/ipmi/ipmi_watchdog.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/mwave
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/mwave/mwave.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/mxser.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/n_hdlc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/pcmcia
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/pcmcia/synclink_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/rocket.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/specialix.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/sx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/synclink.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/char/synclinkmp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/connector
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/connector/cn.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/hwmon
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/hwmon/hdaps.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/hwmon/hwmon.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/ide-cd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/ide-core.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/ide-disk.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/ide-floppy.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/ide-generic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/legacy
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/legacy/ali14xx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/legacy/dtc2278.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/legacy/ht6560b.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/legacy/ide-cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/legacy/qd65xx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/legacy/umc8672.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/aec62xx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/alim15x3.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/amd74xx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/atiixp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/cmd64x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/cs5520.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/cs5530.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/cy82c693.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/generic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/hpt34x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/hpt366.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/it821x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/ns87415.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/opti621.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/pdc202xx_new.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/pdc202xx_old.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/piix.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/rz1000.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/sc1200.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/serverworks.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/siimage.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/sis5513.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/slc90e66.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/triflex.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/trm290.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ide/pci/via82cxxx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ieee1394
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ieee1394/eth1394.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ieee1394/ieee1394.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ieee1394/ohci1394.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/ieee1394/sbp2.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/capi
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/capi/capi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/capi/capifs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/capi/kernelcapi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/avm_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/b1.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/b1dma.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/b1isa.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/b1pci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/c4.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/t1isa.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/avm/t1pci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/eicon
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/eicon/diva_idi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/eicon/diva_mnt.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/eicon/divacapi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/eicon/divadidd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/isdn/hardware/eicon/divas.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/md
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/md/linear.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/md/md-mod.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/md/multipath.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/md/raid0.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/md/raid1.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/md/raid5.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/md/xor.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message/fusion
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message/fusion/mptbase.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message/fusion/mptctl.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message/fusion/mptfc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message/fusion/mptlan.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message/fusion/mptsas.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message/fusion/mptscsih.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/message/fusion/mptspi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/mmc
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/mmc/mmc_block.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/mmc/mmc_core.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/mmc/wbsd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c501.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c503.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c505.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c507.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c509.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c515.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c523.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c527.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/3c59x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/8139cp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/8139too.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/82596.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/8390.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ac3200.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/acenic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/amd8111e.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/at1700.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/b44.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/bnx2.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/bonding
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/bonding/bonding.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/bsd_comp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/cassini.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/chelsio
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/chelsio/cxgb.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/cs89x0.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/defxx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/depca.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/dgrs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/dl2k.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/dummy.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/e100.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/e1000
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/e1000/e1000.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/e2100.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/eepro.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/eexpress.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/epic100.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/eql.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/es3210.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/eth16i.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ewrk3.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/fealnx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/forcedeth.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/hamachi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/hp-plus.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/hp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/hp100.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ibmlana.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ixgb
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ixgb/ixgb.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/lance.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/lne390.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/lp486e.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/mii.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/natsemi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ne.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ne2.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ne2k-pci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ne3210.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ni52.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ni65.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ns83820.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia/3c574_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia/3c589_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia/axnet_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia/fmvj18x_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia/nmclan_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia/pcnet_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia/smc91c92_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcmcia/xirc2ps_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pcnet32.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/phy
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/phy/cicada.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/phy/davicom.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/phy/libphy.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/phy/lxt.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/phy/marvell.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/phy/qsemi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ppp_async.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ppp_deflate.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ppp_generic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/ppp_synctty.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pppoe.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/pppox.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/r8169.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/s2io.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sb1000.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/seeq8005.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/shaper.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sis190.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sis900.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sk98lin
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sk98lin/sk98lin.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/skfp
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/skfp/skfp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/skge.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/slhc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/slip.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/smc-mca.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/smc-ultra.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/smc-ultra32.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/smc9194.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/starfire.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sundance.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sungem.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sungem_phy.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/sunhme.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tg3.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tlan.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/3c359.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/abyss.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/ibmtr.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/lanstreamer.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/madgemc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/olympic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/proteon.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/skisa.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/smctr.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/tms380tr.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tokenring/tmspci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tulip
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tulip/de2104x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tulip/de4x5.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tulip/dmfe.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tulip/tulip.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tulip/uli526x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tulip/winbond-840.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tulip/xircom_cb.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/tun.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/typhoon.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/via-rhine.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/via-velocity.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/c101.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/cosa.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/dlci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/dscc4.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/farsync.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/hdlc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/hostess_sv11.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/lmc
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/lmc/lmc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/n2.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/pc300.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/pci200syn.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/sbni.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/sdla.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/sealevel.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/syncppp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/wanxl.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wan/z85230.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/airo.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/airo_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/arlan.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/atmel.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/atmel_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/atmel_pci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/hermes.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/hostap
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/hostap/hostap.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/hostap/hostap_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/hostap/hostap_pci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/hostap/hostap_plx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/ipw2100.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/ipw2200.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/netwave_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/orinoco.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/orinoco_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/orinoco_nortel.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/orinoco_pci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/orinoco_plx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/orinoco_tmd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/prism54
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/prism54/prism54.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/ray_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/spectrum_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/wavelan.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/wavelan_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/wireless/wl3501_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/yellowfin.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/znet.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia/i82092.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia/i82365.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia/pcmcia.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia/pcmcia_core.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia/pd6729.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia/rsrc_nonstatic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia/tcic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/pcmcia/yenta_socket.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/3w-9xxx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/3w-xxxx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/53c700.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/BusLogic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/NCR53c406a.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/NCR_D700.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/NCR_Q720_mod.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/a100u2w.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/aacraid.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/aha152x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/aha1542.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/aha1740.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/ahci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/aic79xx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/aic7xxx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/ata_piix.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/atp870u.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/ch.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/dc395x.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/dmx3191d.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/dpt_i2o.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/dtc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/eata.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/fd_mcs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/fdomain.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/g_NCR5380.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/g_NCR5380_mmio.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/gdth.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/ibmmca.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/in2000.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/initio.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/ipr.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/ips.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/libata.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/lpfc
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/lpfc/lpfc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/megaraid
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/megaraid/megaraid_mbox.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/megaraid/megaraid_mm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/megaraid/megaraid_sas.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/nsp32.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/pas16.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/pcmcia
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/pcmcia/aha152x_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/pcmcia/fdomain_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/pcmcia/nsp_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/pcmcia/qlogic_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/pcmcia/sym53c500_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/psi240i.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/qla1280.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/qlogicfas.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/qlogicfas408.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/qlogicfc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/raid_class.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_mv.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_nv.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_promise.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_qstor.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_sil.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_sis.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_svw.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_sx4.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_uli.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_via.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sata_vsc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/scsi_mod.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/scsi_transport_fc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/scsi_transport_sas.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/scsi_transport_spi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sd_mod.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sg.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sim710.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sr_mod.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sym53c416.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/sym53c8xx.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/t128.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/tmscsim.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/u14-34f.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/ultrastor.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/scsi/wd7000.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250_accent.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250_acpi.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250_boca.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250_fourport.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250_hub6.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250_mca.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250_pci.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/8250_pnp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/jsm
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/jsm/jsm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/serial_core.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/serial/serial_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/atm
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/atm/cxacru.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/atm/speedtch.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/atm/usbatm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/atm/xusbatm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/class
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/class/cdc-acm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/core
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/core/usbcore.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/host
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/host/ehci-hcd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/host/isp116x-hcd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/host/ohci-hcd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/host/sl811-hcd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/host/sl811_cs.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/host/uhci-hcd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/input
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/input/usbhid.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/asix.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/catc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/cdc_ether.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/cdc_subset.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/gl620a.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/kaweth.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/net1080.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/pegasus.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/plusb.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/rndis_host.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/rtl8150.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/usbnet.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/zaurus.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/net/zd1201.ko
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/storage
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/usb/storage/usb-storage.ko
+#lib/modules/2.6.25.17-ipfire/kernel/fs
+#lib/modules/2.6.25.17-ipfire/kernel/fs/ext3
+#lib/modules/2.6.25.17-ipfire/kernel/fs/ext3/ext3.ko
+#lib/modules/2.6.25.17-ipfire/kernel/fs/fat
+#lib/modules/2.6.25.17-ipfire/kernel/fs/fat/fat.ko
+#lib/modules/2.6.25.17-ipfire/kernel/fs/jbd
+#lib/modules/2.6.25.17-ipfire/kernel/fs/jbd/jbd.ko
+#lib/modules/2.6.25.17-ipfire/kernel/fs/mbcache.ko
+#lib/modules/2.6.25.17-ipfire/kernel/fs/vfat
+#lib/modules/2.6.25.17-ipfire/kernel/fs/vfat/vfat.ko
+#lib/modules/2.6.25.17-ipfire/kernel/lib
+#lib/modules/2.6.25.17-ipfire/kernel/lib/crc-ccitt.ko
+#lib/modules/2.6.25.17-ipfire/kernel/lib/crc16.ko
+#lib/modules/2.6.25.17-ipfire/kernel/lib/crc32.ko
+#lib/modules/2.6.25.17-ipfire/kernel/lib/ts_bm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/lib/ts_fsm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/lib/ts_kmp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net
+#lib/modules/2.6.25.17-ipfire/kernel/net/8021q
+#lib/modules/2.6.25.17-ipfire/kernel/net/8021q/8021q.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/atm
+#lib/modules/2.6.25.17-ipfire/kernel/net/atm/atm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/atm/br2684.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/atm/clip.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/atm/pppoatm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/bluetooth.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/bnep
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/bnep/bnep.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/cmtp
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/cmtp/cmtp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/hidp
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/hidp/hidp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/l2cap.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/rfcomm
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/rfcomm/rfcomm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bluetooth/sco.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/bridge.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_802_3.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_among.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_arp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_arpreply.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_dnat.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_ip.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_limit.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_log.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_mark.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_mark_m.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_pkttype.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_redirect.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_snat.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_stp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_ulog.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebt_vlan.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebtable_broute.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebtable_filter.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebtable_nat.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/bridge/netfilter/ebtables.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ieee80211
+#lib/modules/2.6.25.17-ipfire/kernel/net/ieee80211/ieee80211.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ieee80211/ieee80211_crypt.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ieee80211/ieee80211_crypt_ccmp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ieee80211/ieee80211_crypt_tkip.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ieee80211/ieee80211_crypt_wep.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/inet_diag.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/ip_gre.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/ipip.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack_amanda.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack_ftp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack_irc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack_netbios_ns.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack_netlink.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack_pptp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack_proto_sctp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_conntrack_tftp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ip_queue.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_bic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_cubic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_diag.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_highspeed.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_htcp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_hybla.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_scalable.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_vegas.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/tcp_westwood.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/key
+#lib/modules/2.6.25.17-ipfire/kernel/net/key/af_key.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/netfilter
+#lib/modules/2.6.25.17-ipfire/kernel/net/netfilter/nfnetlink.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/netfilter/nfnetlink_log.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/netfilter/nfnetlink_queue.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/cls_basic.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/cls_fw.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/cls_route.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/cls_rsvp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/cls_rsvp6.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/cls_tcindex.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/cls_u32.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/em_cmp.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/em_meta.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/em_nbyte.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/em_text.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/em_u32.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_atm.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_cbq.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_dsmark.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_gred.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_hfsc.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_htb.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_ingress.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_prio.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_red.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_sfq.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_tbf.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/sched/sch_teql.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/xfrm
+#lib/modules/2.6.25.17-ipfire/kernel/net/xfrm/xfrm_user.ko
+#lib/modules/2.6.25.17-ipfire/modules.alias
+#lib/modules/2.6.25.17-ipfire/modules.ccwmap
+#lib/modules/2.6.25.17-ipfire/modules.dep
+#lib/modules/2.6.25.17-ipfire/modules.ieee1394map
+#lib/modules/2.6.25.17-ipfire/modules.inputmap
+#lib/modules/2.6.25.17-ipfire/modules.isapnpmap
+#lib/modules/2.6.25.17-ipfire/modules.ofmap
+#lib/modules/2.6.25.17-ipfire/modules.pcimap
+#lib/modules/2.6.25.17-ipfire/modules.seriomap
+#lib/modules/2.6.25.17-ipfire/modules.symbols
+#lib/modules/2.6.25.17-ipfire/modules.usbmap
+#lib/modules/2.6.25.17-ipfire/source
+#lib/modules/2.6.25.17-ipfire/kernel/drivers/net/imq.ko
+#lib/modules/2.6.25.17-ipfire/kernel/net/ipv4/netfilter/ipt_IMQ.ko
+#boot/System.map-2.6.25.17-ipfire-smp
+boot/config-2.6.25.17-ipfire
+#boot/vmlinuz-2.6.25.17-ipfire-smp
+#boot/vmlinuz-ipfire-smp
+#lib/modules
+#lib/modules/2.6.25.17-ipfire-smp
+#lib/modules/2.6.25.17-ipfire-smp/build
+#lib/modules/2.6.25.17-ipfire-smp/kernel
+#lib/modules/2.6.25.17-ipfire-smp/kernel/arch
+#lib/modules/2.6.25.17-ipfire-smp/kernel/arch/i386
+#lib/modules/2.6.25.17-ipfire-smp/kernel/arch/i386/kernel
+#lib/modules/2.6.25.17-ipfire-smp/kernel/arch/i386/kernel/apm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/arch/i386/kernel/cpu
+#lib/modules/2.6.25.17-ipfire-smp/kernel/arch/i386/kernel/cpu/mcheck
+#lib/modules/2.6.25.17-ipfire-smp/kernel/arch/i386/kernel/cpu/mcheck/non-fatal.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/crypto
+#lib/modules/2.6.25.17-ipfire-smp/kernel/crypto/aes.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/crypto/arc4.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/crypto/michael_mic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi/ac.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi/battery.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi/button.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi/fan.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi/ibm_acpi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi/processor.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi/thermal.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/acpi/video.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/ambassador.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/atmtcp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/eni.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/firestream.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/fore_200e.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/he.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/horizon.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/idt77105.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/idt77252.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/iphase.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/lanai.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/nicstar.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/suni.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/uPD98402.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/atm/zatm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/base
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/base/firmware_class.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/block
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/block/DAC960.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/block/cciss.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/block/cpqarray.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/block/cryptoloop.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/block/sx8.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/block/ub.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/bcm203x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/bfusb.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/bluecard_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/bpa10x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/bt3c_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/btuart_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/dtl1_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/hci_uart.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/hci_usb.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/bluetooth/hci_vhci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom/aztcd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom/cdrom.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom/gscd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom/isp16.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom/mcdx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom/optcd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom/sjcd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/cdrom/sonycd535.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/cyclades.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/epca.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/generic_serial.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/ipmi
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/ipmi/ipmi_devintf.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/ipmi/ipmi_msghandler.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/ipmi/ipmi_poweroff.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/ipmi/ipmi_si.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/ipmi/ipmi_watchdog.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/mwave
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/mwave/mwave.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/mxser.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/n_hdlc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/pcmcia
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/pcmcia/synclink_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/rocket.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/specialix.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/sx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/synclink.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/char/synclinkmp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/connector
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/connector/cn.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/hwmon
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/hwmon/hdaps.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/hwmon/hwmon.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/ide-cd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/ide-core.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/ide-disk.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/ide-floppy.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/ide-generic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/legacy
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/legacy/ali14xx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/legacy/dtc2278.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/legacy/ht6560b.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/legacy/ide-cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/legacy/qd65xx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/legacy/umc8672.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/aec62xx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/alim15x3.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/amd74xx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/atiixp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/cmd64x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/cs5520.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/cs5530.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/cy82c693.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/generic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/hpt34x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/hpt366.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/it821x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/ns87415.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/opti621.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/pdc202xx_new.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/pdc202xx_old.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/piix.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/rz1000.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/sc1200.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/serverworks.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/siimage.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/sis5513.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/slc90e66.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/triflex.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/trm290.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ide/pci/via82cxxx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ieee1394
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ieee1394/eth1394.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ieee1394/ieee1394.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ieee1394/ohci1394.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/ieee1394/sbp2.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/capi
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/capi/capi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/capi/capifs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/capi/kernelcapi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/avm_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/b1.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/b1dma.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/b1isa.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/b1pci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/c4.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/t1isa.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/avm/t1pci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/eicon
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/eicon/diva_idi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/eicon/diva_mnt.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/eicon/divacapi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/eicon/divadidd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/isdn/hardware/eicon/divas.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/md
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/md/linear.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/md/md-mod.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/md/multipath.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/md/raid0.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/md/raid1.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/md/raid5.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/md/xor.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message/fusion
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message/fusion/mptbase.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message/fusion/mptctl.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message/fusion/mptfc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message/fusion/mptlan.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message/fusion/mptsas.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message/fusion/mptscsih.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/message/fusion/mptspi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/mmc
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/mmc/mmc_block.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/mmc/mmc_core.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/mmc/wbsd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c501.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c503.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c505.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c507.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c509.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c515.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c523.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c527.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/3c59x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/8139cp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/8139too.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/82596.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/8390.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ac3200.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/acenic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/amd8111e.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/at1700.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/b44.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/bnx2.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/bonding
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/bonding/bonding.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/bsd_comp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/cassini.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/chelsio
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/chelsio/cxgb.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/cs89x0.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/defxx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/depca.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/dgrs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/dl2k.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/dummy.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/e100.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/e1000
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/e1000/e1000.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/e2100.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/eepro.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/eexpress.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/epic100.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/eql.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/es3210.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/eth16i.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ewrk3.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/fealnx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/forcedeth.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/hamachi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/hp-plus.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/hp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/hp100.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ibmlana.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ixgb
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ixgb/ixgb.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/lance.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/lne390.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/lp486e.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/mii.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/natsemi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ne.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ne2.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ne2k-pci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ne3210.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ni52.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ni65.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ns83820.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia/3c574_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia/3c589_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia/axnet_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia/fmvj18x_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia/nmclan_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia/pcnet_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia/smc91c92_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcmcia/xirc2ps_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pcnet32.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/phy
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/phy/cicada.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/phy/davicom.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/phy/libphy.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/phy/lxt.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/phy/marvell.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/phy/qsemi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ppp_async.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ppp_deflate.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ppp_generic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/ppp_synctty.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pppoe.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/pppox.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/r8169.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/s2io.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sb1000.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/seeq8005.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/shaper.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sis190.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sis900.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sk98lin
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sk98lin/sk98lin.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/skfp
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/skfp/skfp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/skge.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/slhc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/slip.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/smc-mca.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/smc-ultra.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/smc-ultra32.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/smc9194.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/starfire.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sundance.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sungem.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sungem_phy.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/sunhme.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tg3.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tlan.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/3c359.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/abyss.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/ibmtr.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/lanstreamer.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/madgemc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/olympic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/proteon.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/skisa.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/smctr.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/tms380tr.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tokenring/tmspci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tulip
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tulip/de2104x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tulip/de4x5.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tulip/dmfe.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tulip/tulip.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tulip/uli526x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tulip/winbond-840.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tulip/xircom_cb.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/tun.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/typhoon.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/via-rhine.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/via-velocity.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/c101.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/cosa.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/dlci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/dscc4.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/farsync.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/hdlc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/hostess_sv11.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/lmc
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/lmc/lmc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/n2.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/pc300.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/pci200syn.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/sbni.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/sdla.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/sealevel.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/syncppp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/wanxl.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wan/z85230.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/airo.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/airo_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/arlan.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/atmel.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/atmel_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/atmel_pci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/hermes.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/hostap
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/hostap/hostap.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/hostap/hostap_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/hostap/hostap_pci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/hostap/hostap_plx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/ipw2100.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/ipw2200.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/netwave_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/orinoco.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/orinoco_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/orinoco_nortel.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/orinoco_pci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/orinoco_plx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/orinoco_tmd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/prism54
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/prism54/prism54.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/ray_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/spectrum_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/wavelan.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/wavelan_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/wireless/wl3501_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/yellowfin.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/znet.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia/i82092.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia/i82365.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia/pcmcia.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia/pcmcia_core.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia/pd6729.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia/rsrc_nonstatic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia/tcic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/pcmcia/yenta_socket.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/3w-9xxx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/3w-xxxx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/53c700.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/BusLogic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/NCR53c406a.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/NCR_D700.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/NCR_Q720_mod.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/a100u2w.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/aacraid.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/aha152x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/aha1542.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/aha1740.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/ahci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/aic79xx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/aic7xxx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/ata_piix.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/atp870u.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/ch.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/dc395x.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/dmx3191d.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/dpt_i2o.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/dtc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/eata.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/fd_mcs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/fdomain.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/g_NCR5380.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/g_NCR5380_mmio.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/gdth.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/ibmmca.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/in2000.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/initio.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/ipr.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/ips.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/libata.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/lpfc
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/lpfc/lpfc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/megaraid
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/megaraid/megaraid_mbox.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/megaraid/megaraid_mm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/megaraid/megaraid_sas.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/nsp32.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/pas16.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/pcmcia
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/pcmcia/aha152x_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/pcmcia/fdomain_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/pcmcia/nsp_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/pcmcia/qlogic_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/pcmcia/sym53c500_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/psi240i.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/qla1280.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/qlogicfas.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/qlogicfas408.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/qlogicfc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/raid_class.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_mv.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_nv.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_promise.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_qstor.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_sil.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_sis.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_svw.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_sx4.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_uli.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_via.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sata_vsc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/scsi_mod.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/scsi_transport_fc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/scsi_transport_sas.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/scsi_transport_spi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sd_mod.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sg.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sim710.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sr_mod.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sym53c416.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/sym53c8xx.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/t128.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/tmscsim.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/u14-34f.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/ultrastor.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/scsi/wd7000.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250_accent.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250_acpi.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250_boca.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250_fourport.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250_hub6.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250_mca.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250_pci.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/8250_pnp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/jsm
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/jsm/jsm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/serial_core.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/serial/serial_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/atm
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/atm/cxacru.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/atm/speedtch.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/atm/usbatm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/atm/xusbatm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/class
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/class/cdc-acm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/core
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/core/usbcore.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/host
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/host/ehci-hcd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/host/isp116x-hcd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/host/ohci-hcd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/host/sl811-hcd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/host/sl811_cs.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/host/uhci-hcd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/input
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/input/usbhid.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/asix.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/catc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/cdc_ether.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/cdc_subset.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/gl620a.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/kaweth.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/net1080.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/pegasus.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/plusb.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/rndis_host.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/rtl8150.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/usbnet.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/zaurus.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/net/zd1201.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/storage
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/usb/storage/usb-storage.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/ext3
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/ext3/ext3.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/fat
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/fat/fat.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/jbd
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/jbd/jbd.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/mbcache.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/vfat
+#lib/modules/2.6.25.17-ipfire-smp/kernel/fs/vfat/vfat.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/lib
+#lib/modules/2.6.25.17-ipfire-smp/kernel/lib/crc-ccitt.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/lib/crc16.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/lib/crc32.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/lib/ts_bm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/lib/ts_fsm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/lib/ts_kmp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/8021q
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/8021q/8021q.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/atm
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/atm/atm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/atm/br2684.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/atm/clip.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/atm/pppoatm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/bluetooth.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/bnep
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/bnep/bnep.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/cmtp
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/cmtp/cmtp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/hidp
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/hidp/hidp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/l2cap.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/rfcomm
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/rfcomm/rfcomm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bluetooth/sco.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/bridge.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_802_3.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_among.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_arp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_arpreply.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_dnat.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_ip.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_limit.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_log.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_mark.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_mark_m.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_pkttype.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_redirect.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_snat.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_stp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_ulog.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebt_vlan.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebtable_broute.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebtable_filter.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebtable_nat.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/bridge/netfilter/ebtables.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ieee80211
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ieee80211/ieee80211.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ieee80211/ieee80211_crypt.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ieee80211/ieee80211_crypt_ccmp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ieee80211/ieee80211_crypt_tkip.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ieee80211/ieee80211_crypt_wep.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/inet_diag.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/ip_gre.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/ipip.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack_amanda.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack_ftp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack_irc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack_netbios_ns.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack_netlink.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack_pptp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack_proto_sctp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_conntrack_tftp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ip_queue.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_bic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_cubic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_diag.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_highspeed.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_htcp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_hybla.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_scalable.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_vegas.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/tcp_westwood.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/key
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/key/af_key.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/netfilter
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/netfilter/nfnetlink.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/netfilter/nfnetlink_log.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/netfilter/nfnetlink_queue.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/cls_basic.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/cls_fw.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/cls_route.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/cls_rsvp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/cls_rsvp6.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/cls_tcindex.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/cls_u32.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/em_cmp.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/em_meta.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/em_nbyte.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/em_text.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/em_u32.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_atm.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_cbq.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_dsmark.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_gred.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_hfsc.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_htb.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_ingress.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_prio.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_red.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_sfq.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_tbf.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/sched/sch_teql.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/xfrm
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/xfrm/xfrm_user.ko
+#lib/modules/2.6.25.17-ipfire-smp/modules.alias
+#lib/modules/2.6.25.17-ipfire-smp/modules.ccwmap
+#lib/modules/2.6.25.17-ipfire-smp/modules.dep
+#lib/modules/2.6.25.17-ipfire-smp/modules.ieee1394map
+#lib/modules/2.6.25.17-ipfire-smp/modules.inputmap
+#lib/modules/2.6.25.17-ipfire-smp/modules.isapnpmap
+#lib/modules/2.6.25.17-ipfire-smp/modules.ofmap
+#lib/modules/2.6.25.17-ipfire-smp/modules.pcimap
+#lib/modules/2.6.25.17-ipfire-smp/modules.seriomap
+#lib/modules/2.6.25.17-ipfire-smp/modules.symbols
+#lib/modules/2.6.25.17-ipfire-smp/modules.usbmap
+#lib/modules/2.6.25.17-ipfire-smp/source
+#lib/modules/2.6.25.17-ipfire-smp/kernel/drivers/net/imq.ko
+#lib/modules/2.6.25.17-ipfire-smp/kernel/net/ipv4/netfilter/ipt_IMQ.ko
+#sbin/gen_init_cpio
diff --git a/config/rootfiles/common/nagios-3.0 b/config/rootfiles/common/nagios-3.0
new file mode 100644 (file)
index 0000000..ef0ccc2
--- /dev/null
@@ -0,0 +1,365 @@
+usr/bin/nagios
+usr/bin/nagiostats
+usr/bin/p1.pl
+usr/share/nagios
+#usr/share/nagios/cgi-bin
+#usr/share/nagios/cgi-bin/avail.cgi
+#usr/share/nagios/cgi-bin/cmd.cgi
+#usr/share/nagios/cgi-bin/config.cgi
+#usr/share/nagios/cgi-bin/extinfo.cgi
+#usr/share/nagios/cgi-bin/histogram.cgi
+#usr/share/nagios/cgi-bin/history.cgi
+#usr/share/nagios/cgi-bin/notifications.cgi
+#usr/share/nagios/cgi-bin/outages.cgi
+#usr/share/nagios/cgi-bin/showlog.cgi
+#usr/share/nagios/cgi-bin/status.cgi
+#usr/share/nagios/cgi-bin/statusmap.cgi
+#usr/share/nagios/cgi-bin/statuswml.cgi
+#usr/share/nagios/cgi-bin/statuswrl.cgi
+#usr/share/nagios/cgi-bin/summary.cgi
+#usr/share/nagios/cgi-bin/tac.cgi#
+#usr/share/nagios/cgi-bin/trends.cgi
+usr/share/nagios/contexthelp
+#usr/share/nagios/contexthelp/A1.html
+#usr/share/nagios/contexthelp/A2.html
+#usr/share/nagios/contexthelp/A3.html
+#usr/share/nagios/contexthelp/A4.html
+#usr/share/nagios/contexthelp/A5.html
+#usr/share/nagios/contexthelp/A6.html
+#usr/share/nagios/contexthelp/A7.html
+#usr/share/nagios/contexthelp/B1.html
+#usr/share/nagios/contexthelp/C1.html
+#usr/share/nagios/contexthelp/D1.html
+#usr/share/nagios/contexthelp/E1.html
+#usr/share/nagios/contexthelp/F1.html
+#usr/share/nagios/contexthelp/G1.html
+#usr/share/nagios/contexthelp/G2.html
+#usr/share/nagios/contexthelp/G3.html
+#usr/share/nagios/contexthelp/G4.html
+#usr/share/nagios/contexthelp/G5.html
+#usr/share/nagios/contexthelp/G6.html
+#usr/share/nagios/contexthelp/H1.html
+#usr/share/nagios/contexthelp/H2.html
+#usr/share/nagios/contexthelp/H3.html
+#usr/share/nagios/contexthelp/H4.html
+#usr/share/nagios/contexthelp/H5.html
+#usr/share/nagios/contexthelp/H6.html
+#usr/share/nagios/contexthelp/H7.html
+#usr/share/nagios/contexthelp/H8.html
+#usr/share/nagios/contexthelp/I1.html
+#usr/share/nagios/contexthelp/I2.html
+#usr/share/nagios/contexthelp/I3.html
+#usr/share/nagios/contexthelp/I4.html
+#usr/share/nagios/contexthelp/I5.html
+#usr/share/nagios/contexthelp/I6.html
+#usr/share/nagios/contexthelp/I7.html
+#usr/share/nagios/contexthelp/I8.html
+#usr/share/nagios/contexthelp/I9.html
+#usr/share/nagios/contexthelp/J1.html
+#usr/share/nagios/contexthelp/K1.html
+#usr/share/nagios/contexthelp/L1.html
+#usr/share/nagios/contexthelp/L10.html
+#usr/share/nagios/contexthelp/L11.html
+#usr/share/nagios/contexthelp/L12.html
+#usr/share/nagios/contexthelp/L13.html
+#usr/share/nagios/contexthelp/L2.html
+#usr/share/nagios/contexthelp/L3.html
+#usr/share/nagios/contexthelp/L4.html
+#usr/share/nagios/contexthelp/L5.html
+#usr/share/nagios/contexthelp/L6.html
+#usr/share/nagios/contexthelp/L7.html
+#usr/share/nagios/contexthelp/L8.html
+#usr/share/nagios/contexthelp/L9.html
+#usr/share/nagios/contexthelp/M1.html
+#usr/share/nagios/contexthelp/M2.html
+#usr/share/nagios/contexthelp/M3.html
+#usr/share/nagios/contexthelp/M4.html
+#usr/share/nagios/contexthelp/M5.html
+#usr/share/nagios/contexthelp/M6.html
+#usr/share/nagios/contexthelp/N1.html
+#usr/share/nagios/contexthelp/N2.html
+#usr/share/nagios/contexthelp/N3.html
+#usr/share/nagios/contexthelp/N4.html
+#usr/share/nagios/contexthelp/N5.html
+#usr/share/nagios/contexthelp/N6.html
+#usr/share/nagios/contexthelp/N7.html
+usr/share/nagios/docs
+#usr/share/nagios/docs/about.html
+#usr/share/nagios/docs/activechecks.html
+#usr/share/nagios/docs/adaptive.html
+#usr/share/nagios/docs/addons.html
+#usr/share/nagios/docs/beginners.html
+#usr/share/nagios/docs/cachedchecks.html
+#usr/share/nagios/docs/cgiauth.html
+#usr/share/nagios/docs/cgiincludes.html
+#usr/share/nagios/docs/cgis.html
+#usr/share/nagios/docs/checkscheduling.html
+#usr/share/nagios/docs/clusters.html
+#usr/share/nagios/docs/config.html
+#usr/share/nagios/docs/configcgi.html
+#usr/share/nagios/docs/configmain.html
+#usr/share/nagios/docs/configobject.html
+#usr/share/nagios/docs/customobjectvars.html
+#usr/share/nagios/docs/dependencies.html
+#usr/share/nagios/docs/dependencychecks.html
+#usr/share/nagios/docs/distributed.html
+#usr/share/nagios/docs/downtime.html
+#usr/share/nagios/docs/embeddedperl.html
+#usr/share/nagios/docs/epnplugins.html
+#usr/share/nagios/docs/escalations.html
+#usr/share/nagios/docs/eventhandlers.html
+#usr/share/nagios/docs/extcommands.html
+#usr/share/nagios/docs/faststartup.html
+#usr/share/nagios/docs/flapping.html
+#usr/share/nagios/docs/freshness.html
+#usr/share/nagios/docs/funstuff.html
+#usr/share/nagios/docs/hostchecks.html
+#usr/share/nagios/docs/images
+#usr/share/nagios/docs/images/activechecks.png
+#usr/share/nagios/docs/images/cachedcheckgraphs.png
+#usr/share/nagios/docs/images/cachedchecks.png
+#usr/share/nagios/docs/images/cachedchecks1.png
+#usr/share/nagios/docs/images/cgi-avail-a.png
+#usr/share/nagios/docs/images/cgi-avail-b.png
+#usr/share/nagios/docs/images/cgi-cmd.png
+#usr/share/nagios/docs/images/cgi-config.png
+#usr/share/nagios/docs/images/cgi-extinfo-a.png
+#usr/share/nagios/docs/images/cgi-extinfo-b.png
+#usr/share/nagios/docs/images/cgi-extinfo-c.png
+#usr/share/nagios/docs/images/cgi-extinfo-d.png
+#usr/share/nagios/docs/images/cgi-histogram.png
+#usr/share/nagios/docs/images/cgi-history.png
+#usr/share/nagios/docs/images/cgi-notifications.png
+#usr/share/nagios/docs/images/cgi-outages.png
+#usr/share/nagios/docs/images/cgi-showlog.png
+#usr/share/nagios/docs/images/cgi-status-a.png
+#usr/share/nagios/docs/images/cgi-status-b.png
+#usr/share/nagios/docs/images/cgi-status-c.png
+#usr/share/nagios/docs/images/cgi-status-d.png
+#usr/share/nagios/docs/images/cgi-statusmap.png
+#usr/share/nagios/docs/images/cgi-statuswml.png
+#usr/share/nagios/docs/images/cgi-statuswrl.png
+#usr/share/nagios/docs/images/cgi-summary.png
+#usr/share/nagios/docs/images/cgi-tac.png
+#usr/share/nagios/docs/images/cgi-trends.png
+#usr/share/nagios/docs/images/checkmark.png
+#usr/share/nagios/docs/images/checktiming.png
+#usr/share/nagios/docs/images/configoverview.png
+#usr/share/nagios/docs/images/distributed.png
+#usr/share/nagios/docs/images/downtime.png
+#usr/share/nagios/docs/images/epn.png
+#usr/share/nagios/docs/images/eventhandlers.png
+#usr/share/nagios/docs/images/externalcommands.png
+#usr/share/nagios/docs/images/fast-startup.png
+#usr/share/nagios/docs/images/fast-startup1.png
+#usr/share/nagios/docs/images/fast-startup2.png
+#usr/share/nagios/docs/images/freshness.png
+#usr/share/nagios/docs/images/host-dependencies.png
+#usr/share/nagios/docs/images/important.gif
+#usr/share/nagios/docs/images/integrationoverview.png
+#usr/share/nagios/docs/images/interleaved1.png
+#usr/share/nagios/docs/images/interleaved2.png
+#usr/share/nagios/docs/images/interleaved3.png
+#usr/share/nagios/docs/images/logofullsize.png
+#usr/share/nagios/docs/images/monitoring-printers.png
+#usr/share/nagios/docs/images/monitoring-routers.png
+#usr/share/nagios/docs/images/monitoring-windows.png
+#usr/share/nagios/docs/images/mrtg-activehostchecks.png
+#usr/share/nagios/docs/images/mrtg-activelychecked.png
+#usr/share/nagios/docs/images/mrtg-activeservicechecks.png
+#usr/share/nagios/docs/images/mrtg-cachedchecks.png
+#usr/share/nagios/docs/images/mrtg-commandbuffers.png
+#usr/share/nagios/docs/images/mrtg-externalcommands.png
+#usr/share/nagios/docs/images/mrtg-hostperfstats.png
+#usr/share/nagios/docs/images/mrtg-hoststatechange.png
+#usr/share/nagios/docs/images/mrtg-passivechecks.png
+#usr/share/nagios/docs/images/mrtg-passivelychecked.png
+#usr/share/nagios/docs/images/mrtg-serviceperfstats.png
+#usr/share/nagios/docs/images/mrtg-servicestatechange.png
+#usr/share/nagios/docs/images/multiple-templates1.png
+#usr/share/nagios/docs/images/multiple-templates2.png
+#usr/share/nagios/docs/images/nagios.jpg
+#usr/share/nagios/docs/images/ndoutils.png
+#usr/share/nagios/docs/images/network-outage1.png
+#usr/share/nagios/docs/images/network-outage2.png
+#usr/share/nagios/docs/images/noninterleaved1.png
+#usr/share/nagios/docs/images/noninterleaved2.png
+#usr/share/nagios/docs/images/note.gif
+#usr/share/nagios/docs/images/nrpe.png
+#usr/share/nagios/docs/images/nsca.png
+#usr/share/nagios/docs/images/nscpp.png
+#usr/share/nagios/docs/images/objects-commands.png
+#usr/share/nagios/docs/images/objects-contacts.png
+#usr/share/nagios/docs/images/objects-hosts.png
+#usr/share/nagios/docs/images/objects-services.png
+#usr/share/nagios/docs/images/objects-timeperiods.png
+#usr/share/nagios/docs/images/passivechecks.png
+#usr/share/nagios/docs/images/passivehosttranslation.png
+#usr/share/nagios/docs/images/plugins.png
+#usr/share/nagios/docs/images/predictive-dependency-checks.png
+#usr/share/nagios/docs/images/printer.png
+#usr/share/nagios/docs/images/reachability1.png
+#usr/share/nagios/docs/images/reachability2.png
+#usr/share/nagios/docs/images/reachability3.png
+#usr/share/nagios/docs/images/reachability4.png
+#usr/share/nagios/docs/images/redudancy.png
+#usr/share/nagios/docs/images/redundancy.png
+#usr/share/nagios/docs/images/security.png
+#usr/share/nagios/docs/images/security1.png
+#usr/share/nagios/docs/images/security2.png
+#usr/share/nagios/docs/images/security3.png
+#usr/share/nagios/docs/images/seealso.gif
+#usr/share/nagios/docs/images/service-dependencies.png
+#usr/share/nagios/docs/images/statetransitions.png
+#usr/share/nagios/docs/images/statetransitions2.png
+#usr/share/nagios/docs/images/stoprestart.png
+#usr/share/nagios/docs/images/switch.png
+#usr/share/nagios/docs/images/tcpwrappers.png
+#usr/share/nagios/docs/images/tip.gif
+#usr/share/nagios/docs/images/tuning.png
+#usr/share/nagios/docs/images/upto.gif
+#usr/share/nagios/docs/index.html
+#usr/share/nagios/docs/int-snmptrap.html
+#usr/share/nagios/docs/int-tcpwrappers.html
+#usr/share/nagios/docs/integration.html
+#usr/share/nagios/docs/largeinstalltweaks.html
+#usr/share/nagios/docs/macrolist.html
+#usr/share/nagios/docs/macros.html
+#usr/share/nagios/docs/monitoring-linux.html
+#usr/share/nagios/docs/monitoring-netware.html
+#usr/share/nagios/docs/monitoring-printers.html
+#usr/share/nagios/docs/monitoring-publicservices.html
+#usr/share/nagios/docs/monitoring-routers.html
+#usr/share/nagios/docs/monitoring-windows.html
+#usr/share/nagios/docs/mrtggraphs.html
+#usr/share/nagios/docs/nagiostats.html
+#usr/share/nagios/docs/networkreachability.html
+#usr/share/nagios/docs/notifications.html
+#usr/share/nagios/docs/objectdefinitions.html
+#usr/share/nagios/docs/objectinheritance.html
+#usr/share/nagios/docs/objecttricks.html
+#usr/share/nagios/docs/oncallrotation.html
+#usr/share/nagios/docs/passivechecks.html
+#usr/share/nagios/docs/passivestatetranslation.html
+#usr/share/nagios/docs/perfdata.html
+#usr/share/nagios/docs/pluginapi.html
+#usr/share/nagios/docs/plugins.html
+#usr/share/nagios/docs/quickstart-fedora.html
+#usr/share/nagios/docs/quickstart-opensuse.html
+#usr/share/nagios/docs/quickstart-ubuntu.html
+#usr/share/nagios/docs/quickstart.html
+#usr/share/nagios/docs/redundancy.html
+#usr/share/nagios/docs/robots.txt
+#usr/share/nagios/docs/security.html
+#usr/share/nagios/docs/servicechecks.html
+#usr/share/nagios/docs/stalking.html
+#usr/share/nagios/docs/startstop.html
+#usr/share/nagios/docs/statetypes.html
+#usr/share/nagios/docs/timeperiods.html
+#usr/share/nagios/docs/toc.html
+#usr/share/nagios/docs/tuning.html
+#usr/share/nagios/docs/upgrading.html
+#usr/share/nagios/docs/verifyconfig.html
+#usr/share/nagios/docs/volatileservices.html
+#usr/share/nagios/docs/whatsnew.html
+usr/share/nagios/images
+#usr/share/nagios/images/NagiosEnterprises-whitebg-112x46.png
+#usr/share/nagios/images/ack.gif
+#usr/share/nagios/images/action.gif
+#usr/share/nagios/images/command.png
+#usr/share/nagios/images/comment.gif
+#usr/share/nagios/images/contexthelp1.gif
+#usr/share/nagios/images/contexthelp2.gif
+#usr/share/nagios/images/critical.png
+#usr/share/nagios/images/delay.gif
+#usr/share/nagios/images/delete.gif
+#usr/share/nagios/images/detail.gif
+#usr/share/nagios/images/disabled.gif
+#usr/share/nagios/images/down.gif
+#usr/share/nagios/images/downtime.gif
+#usr/share/nagios/images/empty.gif
+#usr/share/nagios/images/enabled.gif
+#usr/share/nagios/images/extinfo.gif
+#usr/share/nagios/images/favicon.ico
+#usr/share/nagios/images/flapping.gif
+#usr/share/nagios/images/globe-support-150x150.png
+#usr/share/nagios/images/greendot.gif
+#usr/share/nagios/images/histogram.png
+#usr/share/nagios/images/history.gif
+#usr/share/nagios/images/hostevent.gif
+#usr/share/nagios/images/info.png
+#usr/share/nagios/images/left.gif
+#usr/share/nagios/images/logofullsize.png
+#usr/share/nagios/images/logos
+#usr/share/nagios/images/logos/nagios.gd2
+#usr/share/nagios/images/logos/nagios.gif
+#usr/share/nagios/images/logos/nagiosvrml.png
+#usr/share/nagios/images/logos/unknown.gd2
+#usr/share/nagios/images/logos/unknown.gif
+#usr/share/nagios/images/logrotate.png
+#usr/share/nagios/images/ndisabled.gif
+#usr/share/nagios/images/noack.gif
+#usr/share/nagios/images/notes.gif
+#usr/share/nagios/images/notify.gif
+#usr/share/nagios/images/orangedot.gif
+#usr/share/nagios/images/passiveonly.gif
+#usr/share/nagios/images/recovery.png
+#usr/share/nagios/images/redudancy.png
+#usr/share/nagios/images/redundancy.png
+#usr/share/nagios/images/restart.gif
+#usr/share/nagios/images/right.gif
+#usr/share/nagios/images/sblogo.jpg
+#usr/share/nagios/images/serviceevent.gif
+#usr/share/nagios/images/splunk1.gif
+#usr/share/nagios/images/splunk2.gif
+#usr/share/nagios/images/start.gif
+#usr/share/nagios/images/status.gif
+#usr/share/nagios/images/status2.gif
+#usr/share/nagios/images/status3.gif
+#usr/share/nagios/images/status4.gif
+#usr/share/nagios/images/stop.gif
+#usr/share/nagios/images/tacdisabled.jpg
+#usr/share/nagios/images/tacdisabled.png
+#usr/share/nagios/images/tacenabled.jpg
+#usr/share/nagios/images/tacenabled.png
+#usr/share/nagios/images/thermcrit.png
+#usr/share/nagios/images/thermok.png
+#usr/share/nagios/images/thermwarn.png
+#usr/share/nagios/images/trends.gif
+#usr/share/nagios/images/trendshost.png
+#usr/share/nagios/images/trendssvc.png
+#usr/share/nagios/images/unknown.png
+#usr/share/nagios/images/up.gif
+#usr/share/nagios/images/warning.png
+#usr/share/nagios/images/weblogo1.png
+#usr/share/nagios/images/zoom1.gif
+#usr/share/nagios/images/zoom2.gif
+usr/share/nagios/index.html
+usr/share/nagios/main.html
+usr/share/nagios/media
+#usr/share/nagios/media/critical.wav
+#usr/share/nagios/media/hostdown.wav
+#usr/share/nagios/media/warning.wav
+#usr/share/nagios/robots.txt
+#usr/share/nagios/side.html
+usr/share/nagios/ssi
+usr/share/nagios/stylesheets
+#usr/share/nagios/stylesheets/avail.css
+#usr/share/nagios/stylesheets/checksanity.css
+#usr/share/nagios/stylesheets/cmd.css
+#usr/share/nagios/stylesheets/common.css
+#usr/share/nagios/stylesheets/config.css
+#usr/share/nagios/stylesheets/extinfo.css
+#usr/share/nagios/stylesheets/histogram.css
+#usr/share/nagios/stylesheets/history.css
+#usr/share/nagios/stylesheets/ministatus.css
+#usr/share/nagios/stylesheets/notifications.css
+#usr/share/nagios/stylesheets/outages.css
+#usr/share/nagios/stylesheets/showlog.css
+#usr/share/nagios/stylesheets/status.css
+#usr/share/nagios/stylesheets/statusmap.css
+#usr/share/nagios/stylesheets/summary.css
+#usr/share/nagios/stylesheets/tac.css
+#usr/share/nagios/stylesheets/trends.css
+var/archives
+var/spool/checkresults
index 0920338537160c11ffb0e7f07bf14d52c5ef3f91..5c841e1dcf1ebf271465d664757a4b85b2dcb702 100644 (file)
@@ -3,6 +3,6 @@ srv/web/ipfire/cgi-bin/optionsfw.cgi
 srv/web/ipfire/cgi-bin/gui.cgi
 srv/web/ipfire/cgi-bin/qos.cgi
 srv/web/ipfire/cgi-bin/services.cgi
-srv/web/ipfire/cgi-bin/graphs.cgi
+#srv/web/ipfire/cgi-bin/graphs.cgi
 var/ipfire/langs
 var/ipfire/graphs.pl
index f6ec3fc5f6064f748dc570f42164b5f4f2ae4628..dbf9785d911938f7b4db29958b89f2341508e53b 100644 (file)
@@ -1,9 +1,9 @@
 etc/rc.d/rc3.d/S19smartenabler
 etc/rc.d/init.d/smartenabler
 etc/rc.d/init.d/networking/red
-srv/web/ipfire/cgi-bin/graphs.cgi
+#srv/web/ipfire/cgi-bin/graphs.cgi
 srv/web/ipfire/cgi-bin/hardwaregraphs.cgi
-srv/web/ipfire/cgi-bin/network.cgi
+#srv/web/ipfire/cgi-bin/network.cgi
 srv/web/ipfire/cgi-bin/optionsfw.cgi
 srv/web/ipfire/cgi-bin/proxy.cgi
 usr/local/bin/makegraphs
diff --git a/config/rootfiles/common/r8168-8.005.00 b/config/rootfiles/common/r8168-8.005.00
new file mode 100644 (file)
index 0000000..de751d7
--- /dev/null
@@ -0,0 +1 @@
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/net/r8168.ko
index f41e6f7e6a9016d5f42b3c35f7d60b4adfaee1c1..93451abdbf0ab4cf8d395273156b9a2228682a3f 100644 (file)
@@ -56,6 +56,7 @@ tmp
 #usr/lib
 usr/lib/libgcc_s.so
 usr/lib/libgcc_s.so.1
+usr/local/bin/backupiso
 usr/local/bin/connscheduler
 usr/local/bin/dialctrl.pl
 usr/local/bin/hddshutdown
diff --git a/config/rootfiles/common/v4l-dvb-e9a442d3b53a b/config/rootfiles/common/v4l-dvb-e9a442d3b53a
new file mode 100644 (file)
index 0000000..ed0ce2e
--- /dev/null
@@ -0,0 +1,291 @@
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/ir-common.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/saa7146.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/saa7146_vv.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/mt2060.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/mt20xx.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/mt2131.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/mt2266.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/mxl5005s.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/mxl5007t.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/qt1010.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tda18271.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tda827x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tda8290.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tda9887.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tea5761.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tea5767.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tuner-simple.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tuner-types.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/tuner-xc2028.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/common/tuners/xc5000.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/b2c2
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/b2c2/b2c2-flexcop-pci.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/b2c2/b2c2-flexcop-usb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/b2c2/b2c2-flexcop.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/bt8xx
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/bt8xx/bt878.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/bt8xx/dst.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/bt8xx/dst_ca.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/bt8xx/dvb-bt8xx.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/cinergyT2
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/cinergyT2/cinergyT2.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-a800.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-af9005-remote.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-af9005.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-af9015.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-anysee.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-au6610.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-cxusb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dib0700.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dibusb-common.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dibusb-mb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dibusb-mc.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-digitv.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dtt200u.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-dw2102.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-gl861.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-gp8psk.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-m920x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-nova-t-usb2.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-opera.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-ttusb2.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-umt-010.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-vp702x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb-vp7045.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/dvb-usb/dvb-usb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/af9013.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/au8522.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/bcm3510.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/cx22700.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/cx22702.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/cx24110.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/cx24123.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/dib0070.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/dib3000mb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/dib3000mc.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/dib7000m.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/dib7000p.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/dibx000_common.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/drx397xD.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/dvb-pll.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/isl6405.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/isl6421.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/itd1000.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/l64781.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/lgdt330x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/lnbp21.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/mt312.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/mt352.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/nxt200x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/nxt6000.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/or51132.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/or51211.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/s5h1409.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/s5h1411.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/s5h1420.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/sp8870.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/sp887x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/stv0297.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/stv0299.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/tda10021.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/tda10023.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/tda10048.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/tda1004x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/tda10086.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/tda8083.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/tda826x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/tua6100.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/ves1820.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/ves1x93.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/frontends/zl10353.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/pluto2
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/pluto2/pluto2.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/siano
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/siano/sms1xxx.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttpci
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttpci/budget-av.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttpci/budget-ci.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttpci/budget-core.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttpci/budget-patch.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttpci/budget.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttpci/dvb-ttpci.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttpci/ttpci-eeprom.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttusb-budget
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttusb-dec
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttusb-dec/ttusb_dec.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/dvb/ttusb-dec/ttusbdecfe.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/dsbr100.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-aimslab.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-aztech.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-cadet.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-gemtek-pci.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-gemtek.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-maestro.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-maxiradio.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-rtrack2.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-sf16fmi.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-sf16fmr2.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-si470x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-terratec.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-trust.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-typhoon.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/radio/radio-zoltrix.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/adv7170.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/adv7175.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/au0828
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/au0828/au0828.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/bt819.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/bt856.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/bt866.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/bt8xx
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/bt8xx/bttv.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/btcx-risc.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/bw-qcam.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/c-qcam.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cafe_ccic.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cpia.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cpia2
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cpia2/cpia2.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cpia_pp.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cpia_usb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cs5345.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cs53l32a.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx18
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx18/cx18.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx2341x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx23885
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx23885/cx23885.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx25840
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx25840/cx25840.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx88
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx88/cx88-alsa.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx88/cx88-blackbird.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx88/cx88-dvb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx88/cx88-vp3054-i2c.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx88/cx8800.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx88/cx8802.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/cx88/cx88xx.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/dpc7146.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/em28xx
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/em28xx/em28xx-alsa.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/em28xx/em28xx-dvb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/em28xx/em28xx.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/et61x251
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/et61x251/et61x251.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_conex.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_etoms.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_main.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_mars.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_ov519.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_pac207.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_pac7311.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_sonixb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_sonixj.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_spca500.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_spca501.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_spca505.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_spca506.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_spca508.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_spca561.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_stk014.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_sunplus.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_t613.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_tv8532.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_vc032x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/gspca/gspca_zc3xx.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/hexium_gemini.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/hexium_orion.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ir-kbd-i2c.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ivtv
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ivtv/ivtv.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ivtv/ivtvfb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ks0127.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/m52790.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/msp3400.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/mxb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ov511.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ov7670.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ovcamchip
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/ovcamchip/ovcamchip.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/pms.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/pvrusb2
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/pvrusb2/pvrusb2.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/pwc
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/pwc/pwc.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/s2255drv.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa5246a.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa5249.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa6588.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7110.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7111.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7114.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7115.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7127.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7134
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7134/saa6752hs.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7134/saa7134-alsa.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7134/saa7134-dvb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7134/saa7134-empress.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7134/saa7134.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa717x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7185.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/saa7191.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/se401.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/sn9c102
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/sn9c102/sn9c102.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/stkwebcam.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/stradis.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/stv680.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tcm825x.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tda7432.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tda9840.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tda9875.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tea6415c.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tea6420.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tlv320aic23b.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tuner-3036.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tuner.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tvaudio.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tveeprom.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/tvp5150.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/upd64031a.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/upd64083.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvideo
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvideo/ibmcam.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvideo/konicawc.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvideo/quickcam_messenger.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvideo/ultracam.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvideo/usbvideo.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvideo/vicam.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvision
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/usbvision/usbvision.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/uvc
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/uvc/uvcvideo.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/v4l2-int-device.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/videobuf-core.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/videobuf-dma-contig.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/videobuf-dma-sg.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/videobuf-dvb.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/videobuf-vmalloc.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/videocodec.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/vivi.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/vp27smpx.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/vpx3220.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/w9966.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/w9968cf.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/wm8739.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/wm8775.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/zc0301
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/zc0301/zc0301.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/zr36016.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/zr36050.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/zr36060.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/zr36067.ko
+#lib/modules/2.6.23.17-ipfire/kernel/drivers/media/video/zr364xx.ko
index 51d7280f57e9882cb0017e1e4e5b9ab8f049b700..3ccf9c851e7d48c6f72d5d45383a473305cf2741 100644 (file)
@@ -8,14 +8,9 @@ bin/ntfs-3g
 lib/libntfs-3g.so
 lib/libntfs-3g.so.38
 lib/libntfs-3g.so.38.0.0
-srv/web/ipfire/html/images/updbooster/
-srv/web/ipfire/cgi-bin/updatexlrator.cgi
-var/ipfire/updatexlrator/bin/
-usr/sbin/updxlrator
 srv/web/ipfire/cgi-bin/qos.cgi
 usr/local/bin/qosd
 var/ipfire/qos/bin
-var/ipfire/langs
 usr/lib/collectd/
 var/lib/collectd/
 usr/sbin/collectd
index b000fcc370d31b79ab471599a1207deaa0164825..84ae5992663fb68c0dabc150f21d550c75bf064d 100644 (file)
@@ -1,25 +1,29 @@
+srv/web/ipfire/cgi-bin/mpfire.cgi
+srv/web/ipfire/html/images/mpfire
 usr/lib/perl5/5.8.8/Class/Accessor
 usr/lib/perl5/5.8.8/Class/Accessor.pm
 usr/lib/perl5/5.8.8/Class/Accessor/Fast.pm
 usr/lib/perl5/5.8.8/Class/Accessor/Faster.pm
 usr/lib/perl5/5.8.8/Readonly.pm
 usr/lib/perl5/site_perl/5.8.8/Audio
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Collection.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item/Directory.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item/Playlist.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item/Song.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Stats.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Status.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Time.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Playlist.pm
-#usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Test.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Collection.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item/Directory.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item/Playlist.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Item/Song.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Stats.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Status.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Common/Time.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Playlist.pm
+usr/lib/perl5/site_perl/5.8.8/Audio/MPD/Test.pm
+usr/local/bin/mpfirectrl
 var/ipfire/backup/addons/includes/mpfire
+var/ipfire/menu.d/EX-mpfire.menu
 var/ipfire/mpfire
 var/ipfire/mpfire/bin
 var/ipfire/mpfire/bin/mpfire.pl
@@ -29,3 +33,7 @@ var/ipfire/mpfire/mpd.conf
 var/ipfire/mpfire/playlist.m3u
 var/ipfire/mpfire/settings
 var/ipfire/mpfire/webradio
+usr/local/bin/mpfirectrl
+srv/web/ipfire/cgi-bin/mpfire.cgi
+srv/web/ipfire/html/images/mpfire
+var/ipfire/menu.d/EX-mpfire.menu
index 151c32a9e9c58a752d0662a3f922a634af2fd415..5dbd7abb60cbc21b01c859af92fb83094925591c 100644 (file)
@@ -1 +1,2 @@
 usr/bin/tcptrack
+#usr/share/man/man1/tcptrack.1
index ceadf0455ea40f8ea16185b90a05c02e2e0a9aa3..a470388c5ddfe250dfc7febc10b60540d6b18f93 100644 (file)
@@ -3,6 +3,7 @@ etc/init.d/mISDN
 etc/modprobe.d/blacklist
 usr/bin/bc
 usr/bin/dc
+etc/fstab
 etc/ppp/dialer
 etc/rc.d/init.d/checkfstab
 etc/rc.d/rcsysinit.d/S19checkfstab
@@ -19,16 +20,31 @@ etc/linuxigd/gatedesc.xml
 usr/local/bin/getiptstate
 usr/local/bin/makegraphs
 usr/local/bin/squidctrl
+usr/local/bin/setddns.pl
 srv/web/ipfire/cgi-bin/credits.cgi
 srv/web/ipfire/cgi-bin/speed.cgi
 srv/web/ipfire/cgi-bin/traffic.cgi
 srv/web/ipfire/cgi-bin/hardwaregraphs.cgi
 srv/web/ipfire/cgi-bin/connections.cgi
-srv/web/ipfire/cgi-bin/graphs.cgi
 srv/web/ipfire/cgi-bin/pppsetup.cgi
-srv/web/ipfire/cgi-bin/network.cgi
+srv/web/ipfire/cgi-bin/netexternal.cgi
+srv/web/ipfire/cgi-bin/netinternal.cgi
+srv/web/ipfire/cgi-bin/netother.cgi
 srv/web/ipfire/cgi-bin/system.cgi
+srv/web/ipfire/cgi-bin/services.cgi
+srv/web/ipfire/cgi-bin/media.cgi
+srv/web/ipfire/cgi-bin/memory.cgi
 srv/web/ipfire/cgi-bin/ids.cgi
+srv/web/ipfire/cgi-bin/ddns.cgi
 var/ipfire/sensors/
 var/ipfire/graphs.pl
 var/ipfire/firebuild
+var/ipfire/proxy/advanced/useragents
+srv/web/ipfire/html/images/updbooster/
+srv/web/ipfire/cgi-bin/updatexlrator.cgi
+var/ipfire/updatexlrator/bin/
+usr/sbin/updxlrator
+var/ipfire/langs
+usr/local/bin/qosd
+usr/bin/mkisofs
+usr/bin/cdrecord
diff --git a/config/rootfiles/updater/filelists/linux25 b/config/rootfiles/updater/filelists/linux25
new file mode 120000 (symlink)
index 0000000..c9a54cd
--- /dev/null
@@ -0,0 +1 @@
+../../common/linux25
\ No newline at end of file
index 2f694566486dafa3874411922d03f8721ea029b7..6ed28e0cd064f643618bdd9a47620ea266704819 100755 (executable)
@@ -56,6 +56,11 @@ echo var/updatexlerator >> /opt/pakfire/tmp/ROOTFILES
 echo lib/iptables >> /opt/pakfire/tmp/ROOTFILES
 echo lib/modules >> /opt/pakfire/tmp/ROOTFILES
 echo boot >> /opt/pakfire/tmp/ROOTFILES
+echo srv/web/ipfire/cgi-bin/fwhits.cgi >> /opt/pakfire/tmp/ROOTFILES
+echo srv/web/ipfire/cgi-bin/network.cgi >> /opt/pakfire/tmp/ROOTFILES
+echo srv/web/ipfire/cgi-bin/traffics.cgi >> /opt/pakfire/tmp/ROOTFILES
+echo srv/web/ipfire/cgi-bin/graphs.cgi >> /opt/pakfire/tmp/ROOTFILES
+echo srv/web/ipfire/cgi-bin/qosgraph.cgi >> /opt/pakfire/tmp/ROOTFILES
 #
 tar cjvf /var/ipfire/backup/update_$OLDVERSION-$NEWVERSION.tar.bz2 \
    -T /opt/pakfire/tmp/ROOTFILES --exclude='#*' -C / > /dev/null 2>&1 
@@ -70,6 +75,14 @@ rm -rf /etc/rc.d/rc3.d/S20collectd
 #
 rm -rf /etc/rc.d/rc3.d/S99squid
 #
+# Delete old cgi files ...
+#
+rm -rf /srv/web/ipfire/cgi-bin/fwhits.cgi
+rm -rf /srv/web/ipfire/cgi-bin/network.cgi
+rm -rf /srv/web/ipfire/cgi-bin/traffics.cgi
+rm -rf /srv/web/ipfire/cgi-bin/graphs.cgi
+rm -rf /srv/web/ipfire/cgi-bin/qosgraph.cgi
+#
 # Delete old iptables libs...
 #
 rm -rf /lib/iptables
@@ -131,11 +144,21 @@ fi
 fi
 mkinitcpio -k $KVER-ipfire -g /boot/ipfirerd-$KVER.img
 #mkinitcpio -k $KVER-ipfire-smp -g /boot/ipfirerd-$KVER-smp.img
+mkinitcpio -k 2.6.25.17-ipfire -g /boot/ipfirerd-2.6.25.17.img
 #
 # ReInstall grub
 #
 grub-install --no-floppy ${ROOT::`expr length $ROOT`-1}
 #
+# Update fstab
+#
+grep -v "tmpfs" /etc/fstab > /tmp/fstab.tmp
+echo shm       /dev/shm        tmpfs   defaults,size=25%       0       0 >> /tmp/fstab.tmp
+echo none      /tmp            tmpfs   defaults,size=128M      0       0 >> /tmp/fstab.tmp
+echo none      /var/log/rrd    tmpfs   defaults,size=64M       0       0 >> /tmp/fstab.tmp
+echo none      /var/lock       tmpfs   defaults,size=32M       0       0 >> /tmp/fstab.tmp
+mv /tmp/fstab.tmp /etc/fstab
+#
 # Change version of Pakfire.conf
 #
 sed -i "s|$OLDVERSION|$NEWVERSION|g" /opt/pakfire/etc/pakfire.conf
@@ -149,6 +172,8 @@ echo \\n running on \\s \\r \\m >> /etc/issue
 # Update crontab
 #
 grep -v "ipacsum" /var/spool/cron/root.orig > /tmp/root.orig.tmp
+echo "# Backup collectd files" >> /tmp/root.orig.tmp
+echo "01 * * * *       /etc/init.d/collectd backup >/dev/null" >> /tmp/root.orig.tmp
 mv /tmp/root.orig.tmp /var/spool/cron/root.orig
 chmod 600 /var/spool/cron/root.orig
 chown root:cron /var/spool/cron/root.orig
index 5adf279001c2c7274bbf8235a77172086a7284ee..39f6bca25540c2d8ae5927f8d0bd4b45ffa0433e 100644 (file)
@@ -10,3 +10,4 @@ GREEN_NETADDRESS=192.168.180.0
 GREEN_BROADCAST=192.168.180.255
 ROOT_PASSWORD=ipfire
 ADMIN_PASSWORD=ipfire
+RESTORE_FILE=
index 6e62bdd6b92dc46afe7a6865411915f203e7e457..d35e12979918f1a8660240128be345c0336dcfb5 100644 (file)
 * Unix-Syslog-0.100
 * XML-Parser-2.34
 * alsa-lib-1.0.17
-* alsa-lib-1.0.17-kmod
+* alsa-lib-1.0.17-kmod-2.6.23.17
+* alsa-lib-1.0.17-kmod-2.6.25.17
 * amavisd-new-2.5.2
 * apcupsd-3.14.4
 * applejuice-0.30
 * arping-2.05
 * as86-0.16.17
 * asterisk-1.4.18
-* atl2-2.0.4
+* atl2-2.0.4-kmod-2.6.23.17
+* atl2-2.0.4-kmod-2.6.25.17
 * autoconf-2.59
 * automake-1.9.6
 * backup-ipfire
 * jpegsrc.v6b
 * kbd-1.12
 * klibc-1.5.14
-* kqemu-1.3.0pre11
+* kqemu-1.3.0pre11-kmod-2.6.23.17
+* kqemu-1.3.0pre11-kmod-2.6.25.17
 * kudzu-1.2.64
 * l7-protocols-2008-04-23
 * lame-3.97
 * libxml2-2.6.26
 * libxslt-1.1.17
 * linux-2.6.23.17
+* linux-2.6.25.17
 * linux-atm-2.4.1
-* linux-fusion-7.0.1
 * linux-libc-headers-2.6.12.0
 * linuxigd-0.95
 * lm_sensors-3.0.2
 * lzo-2.02
 * m4-1.4.4
 * mISDNuser-1_1_8
-* madwifi-hal-2008-08-15-r3862-20080903
+* madwifi-hal-2008-08-15-r3862-20080903-kmod-2.6.23.17
+* madwifi-hal-2008-08-15-r3862-20080903-kmod-2.6.25.17
 * make-3.81
 * man-db-2.4.3
 * man-pages-2.34
 * urlgrabber-3.1.0
 * usbutils-0.72
 * util-linux-2.12r
-* v4l-dvb-e9a442d3b53a
+* v4l-dvb-e9a442d3b53a-kmod-2.6.23.17
+* v4l-dvb-e9a442d3b53a-kmod-2.6.25.17
 * vdr-1.6.0
 * vim-7.0
 * vlan.1.9
index a007ea650c211ca4c424ba73215a10864d852b30..0592ef82cdbd63204b98153d765d0e999f2fd23c 100644 (file)
@@ -113,8 +113,13 @@ sub refreshpage{&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' cont
 
 if ( $cgiparams{'ACTION'} eq "backup" )
 {
-       if ( $cgiparams{'BACKUPLOGS'} eq "include" ){system("/usr/local/bin/backupctrl include >/dev/null 2>&1");}
-       else {system("/usr/local/bin/backupctrl exclude >/dev/null 2>&1");}
+       if ( $cgiparams{'BACKUPLOGS'} eq "include" ) {
+               system("/usr/local/bin/backupctrl include >/dev/null 2>&1");
+       } elsif ( $cgiparams{'BACKUPLOGS'} eq "exclude" ) {
+               system("/usr/local/bin/backupctrl exclude >/dev/null 2>&1");
+       } elsif ( $cgiparams{'BACKUPLOGS'} eq "iso" ) {
+               system("/usr/local/bin/backupctrl iso >/dev/null 2>&1");
+       }
 }
 if ( $cgiparams{'ACTION'} eq "addonbackup" )
 {
@@ -141,10 +146,14 @@ my @backups = `cd /var/ipfire/backup/ && ls *.ipf 2>/dev/null`;
 print <<END
 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
 <table width='95%' cellspacing='0'>
-<tr><td align='left' width='40%'>$Lang::tr{'logs'}</td><td align='left'>$Lang::tr{'include logfiles'}
-       <input type='radio' name='BACKUPLOGS' value='include'/>/
-       <input type='radio' name='BACKUPLOGS' value='exclude' checked='checked'/>$Lang::tr{'exclude logfiles'}
-</td></tr>
+<tr>
+       <td align='left' width='40%'>$Lang::tr{'logs'}</td>
+       <td align='left'>
+               <input type='radio' name='BACKUPLOGS' value='include'/> $Lang::tr{'include logfiles'}<br/>
+               <input type='radio' name='BACKUPLOGS' value='exclude' checked='checked'/> $Lang::tr{'exclude logfiles'}<br/>
+               <input type='radio' name='BACKUPLOGS' value='iso' /> $Lang::tr{'generate iso'}
+       </td>
+</tr>
 <tr><td align='center' colspan='2'>
        <input type='hidden' name='ACTION' value='backup' />
        <input type='image' alt='$Lang::tr{'backup'}' title='$Lang::tr{'backup'}' src='/images/document-save.png' />
index b0ae0cf261e065af481370595bcdfe5cb3e25840..dc4e4fbcd2b694381a2c5afeb374945f96b2a6ea 100644 (file)
@@ -37,6 +37,7 @@ require "${General::swroot}/header.pl";
 
 &Header::openbox('100%', 'left', 'Version');
 print "This is IPFire ".`cat /opt/pakfire/etc/pakfire.conf | grep "version =" | cut -d\\" -f2`;
+print "<br>".`uname -a`;
 &Header::closebox();
 
 &Header::openbox('100%', 'left', $Lang::tr{'credits'});
@@ -63,6 +64,8 @@ Developer - Sven Nierlein
 (<a href='mailto:affect\@ipfire.org'>affect\@versatel.de</a>)<br />
 Developer  - Rene Zingel
 (<a href='mailto:linuxadmin\@ipfire.org'>linuxadmin\@ipfire.org</a>)<br />
+Developer - Daniel Glanzmann
+(<a href='mailto:dg\@ipfire.org'>dg\@ipfire.org</a>)<br />
 Sponsor - Karsten Rechenbach
 (<a href='mailto:space\@ipfire.org'>space\@ipfire.org</a>)<br />
 Tester - Ronald Wiesinger
index b70c509590a8315825db1d5f957ae5e3015c8786..4dba22f535a058949936ce7f83c9b7c77d4da879 100644 (file)
@@ -243,6 +243,7 @@ $checked{'SERVICE'}{'easydns.com'} = '';
 $checked{'SERVICE'}{'enom.com'} = '';
 $checked{'SERVICE'}{'freedns.afraid.org'} = '';
 $checked{'SERVICE'}{'hn.org'} = '';
+$checked{'SERVICE'}{'mydyn.de'} = '';
 $checked{'SERVICE'}{'no-ip.com'} = '';
 $checked{'SERVICE'}{'nsupdate'} = '';
 $checked{'SERVICE'}{'ovh.com'} = '';
@@ -335,6 +336,7 @@ print <<END
     <option $checked{'SERVICE'}{'enom.com'}>enom.com</option>
     <option $checked{'SERVICE'}{'freedns.afraid.org'}>freedns.afraid.org</option>
     <option $checked{'SERVICE'}{'hn.org'}>hn.org</option>
+    <option $checked{'SERVICE'}{'mydyn.de'}>mydyn.de</option>
     <option $checked{'SERVICE'}{'no-ip.com'}>no-ip.com</option>
     <option $checked{'SERVICE'}{'nsupdate'}>nsupdate</option>
     <option $checked{'SERVICE'}{'ovh.com'}>ovh.com</option>
diff --git a/html/cgi-bin/fwhits.cgi b/html/cgi-bin/fwhits.cgi
deleted file mode 100644 (file)
index 9c57290..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-#!/usr/bin/perl
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
-#                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
-# it under the terms of the GNU General Public License as published by        #
-# the Free Software Foundation, either version 3 of the License, or           #
-# (at your option) any later version.                                         #
-#                                                                             #
-# This program is distributed in the hope that it will be useful,             #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
-# GNU General Public License for more details.                                #
-#                                                                             #
-# You should have received a copy of the GNU General Public License           #
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-
-
-use strict;
-
-# enable only the following on debugging purpose
-#use warnings;
-#use CGI::Carp 'fatalsToBrowser';
-
-require '/var/ipfire/general-functions.pl';
-require "${General::swroot}/lang.pl";
-require "${General::swroot}/header.pl";
-require "${General::swroot}/graphs.pl";
-
-my %cgiparams=();
-my @cgigraphs=();
-my @graphs=();
-
-&Graphs::updatefwhitsgraph ("day");
-&Graphs::updatefwhitsgraph ("week");
-&Graphs::updatefwhitsgraph ("month");
-&Graphs::updatefwhitsgraph ("year");
-
-$ENV{'QUERY_STRING'} =~ s/&//g;
-@cgigraphs = split(/graph=/,$ENV{'QUERY_STRING'});
-$cgigraphs[1] = '' unless defined $cgigraphs[1];
-
-&Header::showhttpheaders();
-
-my $graphdir = "/home/httpd/html/graphs";
-my @LOCALCHECK=();
-my $errormessage="";
-
-&Header::openpage($Lang::tr{'firewall graphs'}, 1, '');
-&Header::openbigbox('100%', 'left', '', $errormessage);
-
-               &Header::openbox('100%', 'center', $Lang::tr{"daily firewallhits"});
-if (-e "$Header::graphdir/firewallhits-day-area.png") {
-               my $ftime = localtime((stat("$Header::graphdir/firewallhits-day-area.png"))[9]);
-               print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<img alt='' src='/graphs/firewallhits-day-area.png' border='0' />";
-               print "<br />\n";
-} else {
-       print $Lang::tr{'no information available'};
-}
-print "<br />\n";
-               &Header::closebox();
-               
-               &Header::openbox('100%', 'center', $Lang::tr{"weekly firewallhits"});
-if (-e "$Header::graphdir/firewallhits-week-area.png") {
-               my $ftime = localtime((stat("$Header::graphdir/firewallhits-week-area.png"))[9]);
-               print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<img alt='' src='/graphs/firewallhits-week-area.png' border='0' />";
-               print "<br />\n";
-} else {
-       print $Lang::tr{'no information available'};
-}
-print "<br />\n";
-               &Header::closebox();
-
-               &Header::openbox('100%', 'center', $Lang::tr{"monthly firewallhits"});
-if (-e "$Header::graphdir/firewallhits-month-area.png") {
-               my $ftime = localtime((stat("$Header::graphdir/firewallhits-month-area.png"))[9]);
-               print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<img alt='' src='/graphs/firewallhits-month-area.png' border='0' />";
-               print "<br />\n";
-} else {
-       print $Lang::tr{'no information available'};
-}
-print "<br />\n";
-               &Header::closebox();
-
-               &Header::openbox('100%', 'center', $Lang::tr{"yearly firewallhits"});
-if (-e "$Header::graphdir/firewallhits-year-area.png") {
-               my $ftime = localtime((stat("$Header::graphdir/firewallhits-year-area.png"))[9]);
-               print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<img alt='' src='/graphs/firewallhits-year-area.png' border='0' />";
-               print "<br />\n";
-} else {
-       print $Lang::tr{'no information available'};
-}
-print "<br />\n";
-               &Header::closebox();
-
-&Header::closebigbox();
-&Header::closepage();
diff --git a/html/cgi-bin/graphs.cgi b/html/cgi-bin/graphs.cgi
deleted file mode 100644 (file)
index 76f7bc4..0000000
+++ /dev/null
@@ -1,149 +0,0 @@
-#!/usr/bin/perl
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
-#                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
-# it under the terms of the GNU General Public License as published by        #
-# the Free Software Foundation, either version 3 of the License, or           #
-# (at your option) any later version.                                         #
-#                                                                             #
-# This program is distributed in the hope that it will be useful,             #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
-# GNU General Public License for more details.                                #
-#                                                                             #
-# You should have received a copy of the GNU General Public License           #
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-
-use strict;
-
-# enable only the following on debugging purpose
-#use warnings;
-#use CGI::Carp 'fatalsToBrowser';
-
-require '/var/ipfire/general-functions.pl';
-require "${General::swroot}/lang.pl";
-require "${General::swroot}/header.pl";
-require "${General::swroot}/graphs.pl";
-
-my %cgiparams=();
-my %pppsettings=();
-my %netsettings=();
-my @cgigraphs=();
-my @graphs=();
-my $iface='';
-
-&Header::showhttpheaders();
-
-my $graphdir = "/srv/web/ipfire/html/graphs";
-&General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
-
-$ENV{'QUERY_STRING'} =~ s/&//g;
-@cgigraphs = split(/graph=/,$ENV{'QUERY_STRING'});
-$cgigraphs[1] = '' unless defined $cgigraphs[1];
-$cgigraphs[2] = '' unless defined $cgigraphs[2];
-
-if ($cgigraphs[1] =~ /(load)/) {&Graphs::updateloadgraph ("hour");&Graphs::updateloadgraph ("week");&Graphs::updateloadgraph ("month");&Graphs::updateloadgraph ("year");}
-elsif ($cgigraphs[1] =~ /(cpufreq)/) {&Graphs::updatecpufreqgraph ("hour");&Graphs::updatecpufreqgraph ("week");&Graphs::updatecpufreqgraph ("month");&Graphs::updatecpufreqgraph ("year");}
-elsif ($cgigraphs[1] =~ /(cpu)/) {&Graphs::updatecpugraph ("hour");&Graphs::updatecpugraph ("week");&Graphs::updatecpugraph ("month");&Graphs::updatecpugraph ("year");}
-elsif ($cgigraphs[1] =~ /(processes)/) {&Graphs::updateprocessesgraph ("hour");&Graphs::updateprocessesgraph ("week");&Graphs::updateprocessesgraph ("month");&Graphs::updateprocessesgraph ("year");}
-elsif ($cgigraphs[1] =~ /(memory|swap)/) {&Graphs::updatememgraph ("hour");&Graphs::updatememgraph ("week");&Graphs::updatememgraph ("month");&Graphs::updatememgraph ("year");}
-elsif ($cgigraphs[1] =~ /wireless/){ &Graphs::wireless("hour",$cgigraphs[2]); &Graphs::wireless("week",$cgigraphs[2]); &Graphs::wireless("month",$cgigraphs[2]); &Graphs::wireless("year",$cgigraphs[2]); }
-elsif ($cgigraphs[1] =~ /disk/){
-          my @devices = `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`;
-          foreach (@devices) {
-                my $device = $_;
-                chomp($device);
-                                         &Graphs::updatediskgraph ("hour",$device);
-                 &Graphs::updatediskgraph ("week",$device);
-                 &Graphs::updatediskgraph ("month",$device);
-                 &Graphs::updatediskgraph ("year",$device);}}
-elsif ($cgigraphs[2] ne "" ) {&Graphs::updatepinggraph("hour",$cgigraphs[1]);&Graphs::updatepinggraph("week",$cgigraphs[1]);&Graphs::updatepinggraph("month",$cgigraphs[1]);&Graphs::updatepinggraph("year",$cgigraphs[1]);}
-elsif ($cgigraphs[1] =~ /fwhits/) {&Graphs::updatefwhitsgraph("hour");&Graphs::updatefwhitsgraph("week");&Graphs::updatefwhitsgraph("month");&Graphs::updatefwhitsgraph("year");}
-elsif ($cgigraphs[1] =~ /green/ || $cgigraphs[1] =~ /blue/ || $cgigraphs[1] =~ /ipsec/ || $cgigraphs[1] =~ /tun/ || $cgigraphs[1] =~ /orange/ || $cgigraphs[1] =~ /ppp/ || $cgigraphs[1] =~ /red/ ) {&Graphs::updateifgraph($cgigraphs[1], "hour");&Graphs::updateifgraph($cgigraphs[1], "week");&Graphs::updateifgraph($cgigraphs[1], "month");&Graphs::updateifgraph($cgigraphs[1], "year");}
-
-if ($cgigraphs[1] =~ /(network|green|blue|orange|red|ppp|ipsec|tun)/ || $cgigraphs[2] ne "") {
-       &Header::openpage($Lang::tr{'network traffic graphs'}, 1, '');
-} else {
-       &Header::openpage($Lang::tr{'system graphs'}, 1, '');
-}
-
-&Header::openbigbox('100%', 'left');
-
-if ($cgigraphs[1] =~ /wireless/){
-       my $graphname = $cgigraphs[2];
-       &Header::openbox('100%', 'center', "wireless $graphname $Lang::tr{'graph'}");
-       if (-e "$graphdir/wireless-${graphname}-day.png") {
-               my $ftime = localtime((stat("$graphdir/wireless-${graphname}-day.png"))[9]);
-               print "<center>";
-               print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br /><hr />\n";
-               print "<img alt='' src='/graphs/wireless-${graphname}-hour.png' border='0' /><hr />";
-               print "<img alt='' src='/graphs/wireless-${graphname}-day.png' border='0' /><hr />";
-               print "<img alt='' src='/graphs/wireless-${graphname}-week.png' border='0' /><hr />";
-               print "<img alt='' src='/graphs/wireless-${graphname}-month.png' border='0' /><hr />";
-               print "<img alt='' src='/graphs/wireless-${graphname}-year.png' border='0' />";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-       &Header::closebox();
-}
-elsif ($cgigraphs[1] =~ /(green|blue|orange|red|ppp|ipsec|tun|cpu|memory|swap|disk|load|fwhits|processes)/ || $cgigraphs[2] ne "") {
-       my $graph = $cgigraphs[1];
-       my $graphname = ucfirst(lc($cgigraphs[1]));
-       &Header::openbox('100%', 'center', "$graphname $Lang::tr{'graph'}");
-
-       if (-e "$graphdir/${graph}-day.png") {
-               my $ftime = localtime((stat("$graphdir/${graph}-day.png"))[9]);
-               print "<center>";
-               print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br /><hr />\n";
-               print "<img alt='' src='/graphs/${graph}-hour.png' border='0' /><hr />";
-               print "<img alt='' src='/graphs/${graph}-day.png' border='0' /><hr />";
-               print "<img alt='' src='/graphs/${graph}-week.png' border='0' /><hr />";
-               print "<img alt='' src='/graphs/${graph}-month.png' border='0' /><hr />";
-               print "<img alt='' src='/graphs/${graph}-year.png' border='0' />";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-       &Header::closebox();
-} elsif ($cgigraphs[1] =~ /network/) {
-       push (@graphs, ('GREEN'));
-       if ($netsettings{'BLUE_DEV'}) {
-               push (@graphs, ('BLUE')); }
-       if ($netsettings{'ORANGE_DEV'}) {
-               push (@graphs, ('ORANGE')); }
-       push (@graphs, ("RED"));
-       push (@graphs, ('gateway'));
-
-       foreach my $graphname (@graphs) {
-               &Header::openbox('100%', 'center', "$graphname $Lang::tr{'graph'}");
-
-               if (-e "$graphdir/${graphname}-day.png") {
-                       my $ftime = localtime((stat("$graphdir/${graphname}-day.png"))[9]);
-                       print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-                       print "<a href='/cgi-bin/graphs.cgi?graph=$graphname'>";
-                       print "<img alt='' src='/graphs/${graphname}-day.png' border='0' />";
-                       print "</a>";
-               } else {
-                       print $Lang::tr{'no information available'};
-               }
-               print "<br />\n";
-               &Header::closebox();
-       }
-}
-
-print "<div align='center'><table width='80%'><tr><td align='center'>";
-if ( $cgigraphs[1] eq "cpu" || $cgigraphs[1] eq "cpufreq" || $cgigraphs[1] eq "load" ) { print "<a href='/cgi-bin/system.cgi'>"; }
-elsif ( $cgigraphs[1] eq "memory" || $cgigraphs[1] eq "swap" ) { print "<a href='/cgi-bin/memory.cgi'>"; }
-elsif ( $cgigraphs[1] eq "processes" ) { print "<a href='/cgi-bin/services.cgi'>"; }
-elsif ( $cgigraphs[1] =~ /disk/ ) { print "<a href='/cgi-bin/media.cgi'>"; }
-elsif ( $cgigraphs[1] =~ /red/ || $cgigraphs[1] =~ /ppp/ || $cgigraphs[1] =~ /ipsec/ || $cgigraphs[1] =~ /tun/) { print "<a href='/cgi-bin/network.cgi?network=red'>"; }
-elsif ( $cgigraphs[1] =~ /green/ || $cgigraphs[1] =~ /blue/ || $cgigraphs[1] =~ /orange/ || $cgigraphs[1] =~ /wireless/ ) { print "<a href='/cgi-bin/network.cgi?network=internal'>"; }
-elsif ( $cgigraphs[1] eq "fwhits" || $cgigraphs[2] ne "" ) { print "<a href='/cgi-bin/network.cgi?network=other'>"; }
-print "$Lang::tr{'back'}</a></td></tr></table></div>\n";
-
-&Header::closebigbox();
-&Header::closepage();
index 911a63281f92af0c55c0fa74c3ba4fc0b5cd4490..73885a0d7e6445d28d9e8429208e594ad93c975c 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -30,23 +30,16 @@ require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 require "${General::swroot}/graphs.pl";
 
-my %sensorsettings = ();
-my %cgiparams=();
-my @cgigraphs=();
-my $rrdlog = "/var/log/rrd";
-
-&Header::showhttpheaders();
+my %color = ();
+my %mainsettings = ();
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
 
-my $graphdir = "/srv/web/ipfire/html/graphs";
-
-$ENV{'QUERY_STRING'} =~ s/&//g;
-@cgigraphs = split(/graph=/,$ENV{'QUERY_STRING'});
-$cgigraphs[1] = '' unless defined $cgigraphs[1];
+my %sensorsettings = ();
 
 my @sensorsgraphs = ();
-my @sensorsdir = `ls -dA $rrdlog/collectd/localhost/sensors-*/`;
-foreach (@sensorsdir)
-{
+my @sensorsdir = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/sensors-*/`;
+foreach (@sensorsdir){
        chomp($_);chop($_);
        foreach (`ls $_/*`){
                chomp($_);
@@ -54,167 +47,106 @@ foreach (@sensorsdir)
        }
 }
 
-&Header::getcgihash(\%sensorsettings);
-
-if ( $sensorsettings{'ACTION'} eq $Lang::tr{'save'} ) {
-       foreach(@sensorsgraphs){
-               chomp($_);
-                       $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
-                       my $label = $2.$3;$label=~ s/-//g;
-                       if ( $sensorsettings{'LINE-'.$label} ne "on" ){$sensorsettings{'LINE-'.$label} = 'off';}
-                       elsif ( $sensorsettings{'LINE-'.$label} eq "on" ){$sensorsettings{'LINE-'.$label} = 'checked';}
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
+
+if ( $querry[0] =~ "hwtemp"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatehwtempgraph($querry[1]);
+}elsif ( $querry[0] =~ "hwfan"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatehwfangraph($querry[1]);
+}elsif ( $querry[0] =~ "hwvolt"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatehwvoltgraph($querry[1]);
+}elsif ( $querry[0] =~ "sd?" || $querry[0] =~ "hd?" ){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatehddgraph($querry[0],$querry[1]);
+}else{
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'harddisk temperature graphs'}, 1, '');
+       &Header::openbigbox('100%', 'left');
+
+       &Header::getcgihash(\%sensorsettings);
+
+       if ( $sensorsettings{'ACTION'} eq $Lang::tr{'save'} ) {
+               foreach(@sensorsgraphs){
+                       chomp($_);
+                               $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
+                               my $label = $2.$3;$label=~ s/-//g;
+                               if ( $sensorsettings{'LINE-'.$label} ne "on" ){$sensorsettings{'LINE-'.$label} = 'off';}
+                               elsif ( $sensorsettings{'LINE-'.$label} eq "on" ){$sensorsettings{'LINE-'.$label} = 'checked';}
+               }
+               &General::writehash("${General::swroot}/sensors/settings", \%sensorsettings);
        }
-        &General::writehash("${General::swroot}/sensors/settings", \%sensorsettings);
-}
 
-my @disks = `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`;
-
-&Header::openpage($Lang::tr{'harddisk temperature graphs'}, 1, '');
-&Header::openbigbox('100%', 'left');
-
-if ($cgigraphs[1] =~ /hwtemp/) {&Graphs::updatehwtempgraph ("hour");&Graphs::updatehwtempgraph ("week");&Graphs::updatehwtempgraph ("month");&Graphs::updatehwtempgraph ("year");graphbox("hwtemp");}
-elsif ($cgigraphs[1] =~ /hwfan/) {&Graphs::updatehwfangraph ("hour");&Graphs::updatehwfangraph ("week");&Graphs::updatehwfangraph ("month");&Graphs::updatehwfangraph ("year");graphbox("hwfan");}
-elsif ($cgigraphs[1] =~ /hwvolt/) {&Graphs::updatehwvoltgraph ("hour");&Graphs::updatehwvoltgraph ("week");&Graphs::updatehwvoltgraph ("month");&Graphs::updatehwvoltgraph ("year");graphbox("hwvolt");}
-elsif ($cgigraphs[1] =~ /hddtemp/) {
- foreach (@disks){
-  my $disk = $_;
-  chomp $disk;
-  my @array = split(/\//,$disk);
-  &Graphs::updatehddgraph ($array[$#array],"week");&Graphs::updatehddgraph ($array[$#array],"month");&Graphs::updatehddgraph ($array[$#array],"year");
-  hddtempbox($array[$#array]);
+       my @disks = `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`;
+
+       foreach (@disks){
+               my $disk = $_;
+               chomp $disk;
+               my @array = split(/\//,$disk);
+
+               &Header::openbox('100%', 'center', "$array[$#array] $Lang::tr{'graph'}");
+               &Graphs::makegraphbox("hardwaregraphs.cgi",$array[$#array],"day");
+               &Header::closebox();
        }
-}
-else
-{
- &Graphs::updatehwtempgraph ("day");&Graphs::updatehwfangraph ("day");&Graphs::updatehwvoltgraph ("day");
- foreach (@disks){
-  my $disk = $_;
-  chomp $disk;
-  my @array = split(/\//,$disk);
-  &Graphs::updatehddgraph ($array[$#array],"day");
-       if (-e "$graphdir/hddtemp-$disk-day.png") {
-
-         &Header::openbox('100%', 'center', "Disk $disk $Lang::tr{'graph'}");
-         my $ftime = localtime((stat("$graphdir/hddtemp-$disk-day.png"))[9]);
-         print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-         print "<a href='/cgi-bin/hardwaregraphs.cgi?graph=hddtemp'>";
-         print "<img src='/graphs/hddtemp-$disk-day.png' border='0' />";
-               print "</a>";
-         print "<br />\n";
-        &Header::closebox();
-               }
-  }
-
- my @graphs = ("hwtemp","hwfan","hwvolt");
- foreach (@graphs){
-       &Header::openbox('100%', 'center', "$_ $Lang::tr{'graph'}");
-       if (-e "$graphdir/sensors-$_-day.png"){
-           my $ftime = localtime((stat("$graphdir/sensors-$_-day.png"))[9]);
-           print "<center>";
-           print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-           print "<a href='/cgi-bin/hardwaregraphs.cgi?graph=$_'>";
-           print "<img src='/graphs/sensors-$_-day.png' border='0' />";
-           print "</a><hr />";
-           }
-           else{print $Lang::tr{'no information available'};}
+
+       &Header::openbox('100%', 'center', "hwtemp $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("hardwaregraphs.cgi","hwtemp","day");
        &Header::closebox();
- }
+
+       &Header::openbox('100%', 'center', "hwfan $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("hardwaregraphs.cgi","hwfan","day");
+       &Header::closebox();
+
+       &Header::openbox('100%', 'center', "hwvolt $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("hardwaregraphs.cgi","hwvolt","day","375");
+       &Header::closebox();
+
        sensorsbox();
-}
 
-&Header::closebigbox();
-&Header::closepage();
-
-sub hddtempbox {
- my $disk = $_[0];
-    if (-e "$graphdir/hddtemp-$disk-week.png") {
-
-         &Header::openbox('100%', 'center', "Disk $disk $Lang::tr{'graph'}");
-         my $ftime = localtime((stat("$graphdir/hddtemp-$disk-week.png"))[9]);
-         print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-         print "<img src='/graphs/hddtemp-$disk-week.png' border='0' />";
-         print "<br />\n";
-        &Header::closebox();
-  }
-      if (-e "$graphdir/hddtemp-$disk-month.png") {
-
-         &Header::openbox('100%', 'center', "Disk $disk $Lang::tr{'graph'}");
-         my $ftime = localtime((stat("$graphdir/hddtemp-$disk-month.png"))[9]);
-         print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-         print "<img src='/graphs/hddtemp-$disk-month.png' border='0' />";
-         print "<br />\n";
-        &Header::closebox();
-  }
-      if (-e "$graphdir/hddtemp-$disk-year.png") {
-
-         &Header::openbox('100%', 'center', "Disk $disk $Lang::tr{'graph'}");
-         my $ftime = localtime((stat("$graphdir/hddtemp-$disk-year.png"))[9]);
-         print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-         print "<img src='/graphs/hddtemp-$disk-year.png' border='0' />";
-         print "<br />\n";
-        &Header::closebox();
-  }
-}
+       &Header::closebigbox();
+       &Header::closepage();
 
-sub graphbox {
- my $graph = $_[0];
-       &Header::openbox('100%', 'center', "$graph $Lang::tr{'graph'}");
-       if (-e "$graphdir/sensors-$graph-week.png"){
-                        my $ftime = localtime((stat("$graphdir/sensors-$graph-week.png"))[9]);
-                        print "<center>";
-                        print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-                        print "<img src='/graphs/sensors-$graph-week.png' border='0' /><hr />";
-        }
-        else{print $Lang::tr{'no information available'};}
-        &Header::closebox();
-       &Header::openbox('100%', 'center', "$graph $Lang::tr{'graph'}");
-       if (-e "$graphdir/sensors-$graph-month.png"){
-                        my $ftime = localtime((stat("$graphdir/sensors-$graph-month.png"))[9]);
-                        print "<center>";
-                        print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-                        print "<img src='/graphs/sensors-$graph-month.png' border='0' /><hr />";
-        }
-        else{print $Lang::tr{'no information available'};}
-        &Header::closebox();
-       &Header::openbox('100%', 'center', "$graph $Lang::tr{'graph'}");
-       if (-e "$graphdir/sensors-$graph-year.png"){
-                        my $ftime = localtime((stat("$graphdir/sensors-$graph-year.png"))[9]);
-                        print "<center>";
-                        print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-                        print "<img src='/graphs/sensors-$graph-year.png' border='0' /><hr />";
-        }
-        else{print $Lang::tr{'no information available'};}
-        &Header::closebox();
 }
 
-sub sensorsbox{
 
- &Header::openbox('100%', 'center', "$Lang::tr{'mbmon settings'}");
- if ( $cgiparams{'ACTION'} eq $Lang::tr{'save'} ){print "Test";}
+sub sensorsbox {
+       &Header::openbox('100%', 'center', "$Lang::tr{'mbmon settings'}");
 
- print <<END
- <form method='post' action='$ENV{'SCRIPT_NAME'}'>
- <table width='100%' border='0' cellspacing='5' cellpadding='0' align='center'>
- <tr><td align='right' width='40%'><b>$Lang::tr{'mbmon display'}</b></td>
-                <td align='left'><b>$Lang::tr{'mbmon label'}</b></td>
- </tr>
+       print <<END
+<form method='post' action='$ENV{'SCRIPT_NAME'}'>
+<table width='100%' border='0' cellspacing='5' cellpadding='0' align='center'>
+<tr>
+       <td align='right' width='40%'><b>$Lang::tr{'mbmon display'}</b></td>
+       <td align='left'><b>$Lang::tr{'mbmon label'}</b></td>
+</tr>
 END
 ;
-foreach (@sensorsgraphs){
-               $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
-               my $label = $2.$3;$label=~ s/-//g;
-               $sensorsettings{'LABEL-'.$label}="$label";
-               $sensorsettings{'LINE-'.$label}="checked";
-               &General::readhash("${General::swroot}/sensors/settings", \%sensorsettings);
-               print("<tr><td align='right'><input type='checkbox' name='LINE-$label' $sensorsettings{'LINE-'.$label} /></td>");
-               print("<td><input type='text' name='LABEL-$label' value='$sensorsettings{'LABEL-'.$label}' size='25' /></td></tr>\n");
-}
- print <<END
- <tr><td align='center' colspan='2' ><input type='submit' name='ACTION' value=$Lang::tr{'save'} /></td></tr>
- </table>
- </form>
+
+       foreach (@sensorsgraphs){
+                       $_ =~ /\/(.*)sensors-(.*)\/(.*)\.rrd/;
+                       my $label = $2.$3;$label=~ s/-//g;
+                       $sensorsettings{'LABEL-'.$label}="$label";
+                       $sensorsettings{'LINE-'.$label}="checked";
+                       &General::readhash("${General::swroot}/sensors/settings", \%sensorsettings);
+                       print("<tr><td align='right'><input type='checkbox' name='LINE-$label' $sensorsettings{'LINE-'.$label} /></td>");
+                       print("<td><input type='text' name='LABEL-$label' value='$sensorsettings{'LABEL-'.$label}' size='25' /></td></tr>\n");
+       }
+
+       print <<END
+<tr>
+       <td align='center' colspan='2' ><input type='submit' name='ACTION' value=$Lang::tr{'save'} /></td>
+</tr>
+</table>
+</form>
 END
 ;
- &Header::closebox();
      &Header::closebox();
 }
index efd79b58cfaec7a07e1b630d96473da35c9c039b..362e7b38c62dffd4b076bc799a08cd9e4a8d1829 100644 (file)
@@ -114,7 +114,7 @@ if (-e "/etc/snort/snort.conf") {
 
                if ($snortsettings{'ACTION'} eq $Lang::tr{'save'}) {
                        # Check for preprocessor settings
-                       if ($line =~ /preprocessor http_inspect:/) {
+                       if ($line =~ /preprocessor http_inspect/) {
                                # Strip out leading # from rule line
                                $line =~ s/\# ?//i;
                                if (($snortsettings{'ENABLE_PREPROCESSOR_HTTP_INSPECT'} eq 'off')) {
@@ -459,7 +459,7 @@ print <<END
        <td><b>$Lang::tr{'ids preprocessor'}</b></td>
 </tr>
 <tr>
-       <td><input type='checkbox' name='ENABLE_PREPROCESSOR_HTTP_INSPECT' $checked{'ENABLE_PREPROCESSOR_HTTP_INSPECT'}{'on'} />  http_inspect
+       <td><input type='checkbox' name='ENABLE_PREPROCESSOR_HTTP_INSPECT' $checked{'ENABLE_PREPROCESSOR_HTTP_INSPECT'}{'on'} />  http_inspect $Lang::tr{'active'}
 <tr>
        <td><hr /></td>
 </tr>
index 1eacb34286496410bdd0602c45be3a827daeaf51..490ffcad94d98406dbfeb3a048d0a8cb72dc1b4d 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -30,38 +30,50 @@ require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 require "${General::swroot}/graphs.pl";
 
+my %color = ();
+my %mainsettings = ();
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
+
 #workaround to suppress a warning when a variable is used only once
 my @dummy = ( ${Header::colourred} );
 undef (@dummy);
 
 my %cgiparams=();
 
-&Header::showhttpheaders();
-
-&Header::getcgihash(\%cgiparams);
-
-&Header::openpage($Lang::tr{'media information'}, 1, '');
-
-&Header::openbigbox('100%', 'left');
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
 
 my @devices = `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`;
 
-foreach (@devices) {
-       my $device = $_;
-       chomp($device);
-       my @array = split(/\//,$device);
-       &Graphs::updatediskgraph ("day",$array[$#array]);
-       diskbox($array[$#array]);
-}
-
-&Header::openbox('100%', 'center', $Lang::tr{'disk usage'});
-print "<table width='95%' cellspacing='5'>\n";
-open(DF,'/bin/df -B M -x rootfs|');
-while(<DF>)
-{
-        if ($_ =~ m/^Filesystem/ )
-        {
-                print <<END
+if ( $querry[0] =~ "sd?" || $querry[0] =~ "hd?" ){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       
+       &Graphs::updatediskgraph($querry[0],$querry[1]);
+}else{
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'media information'}, 1, '');
+       &Header::openbigbox('100%', 'left');
+
+       foreach (@devices) {
+               my $device = $_;
+               chomp($device);
+               my @array = split(/\//,$device);
+               &Header::openbox('100%', 'center', "$array[$#array] $Lang::tr{'graph'}");
+               diskbox($array[$#array]);
+               &Graphs::makegraphbox("media.cgi",$array[$#array],"day");
+               &Header::closebox();
+       }
+
+       
+       &Header::openbox('100%', 'center', $Lang::tr{'disk usage'});
+       print "<table width='95%' cellspacing='5'>\n";
+       open(DF,'/bin/df -B M -x rootfs|');
+       while(<DF>){
+               if ($_ =~ m/^Filesystem/ ){
+                       print <<END
 <tr>
 <td align='center' class='boldbase'><b>$Lang::tr{'device'}</b></td>
 <td align='center' class='boldbase'><b>$Lang::tr{'mounted on'}</b></td>
@@ -72,11 +84,9 @@ while(<DF>)
 </tr>
 END
 ;
-        }
-        else
-        {
-                my ($device,$size,$used,$free,$percent,$mount) = split;
-                print <<END
+               }else{
+                       my ($device,$size,$used,$free,$percent,$mount) = split;
+                       print <<END
 <tr>
 <td align='center'>$device</td>
 <td align='center'>$mount</td>
@@ -86,24 +96,22 @@ END
 <td align='left'>
 END
 ;
-                &percentbar($percent);
-                print <<END
+                       &percentbar($percent);
+                        print <<END
 </td>
 <td align='left'>$percent</td>
 </tr>
 END
 ;
-        }
-}
-close DF;
-print "<tr><td colspan='7'>&nbsp;\n<tr><td colspan='7'><h3>Inodes</h3>\n";
+               }
+       }
+       close DF;
+       print "<tr><td colspan='7'>&nbsp;\n<tr><td colspan='7'><h3>Inodes</h3>\n";
 
-open(DF,'/bin/df -i -x rootfs|');
-while(<DF>)
-{
-   if ($_ =~ m/^Filesystem/ )
-   {
-      print <<END
+       open(DF,'/bin/df -i -x rootfs|');
+       while(<DF>){
+               if ($_ =~ m/^Filesystem/ ){
+                       print <<END
 <tr>
 <td align='center' class='boldbase'><b>$Lang::tr{'device'}</b></td>
 <td align='center' class='boldbase'><b>$Lang::tr{'mounted on'}</b></td>
@@ -114,11 +122,9 @@ while(<DF>)
 </tr>
 END
 ;
-   }
-   else
-   {
-      my ($device,$size,$used,$free,$percent,$mount) = split;
-      print <<END
+               }else{
+                       my ($device,$size,$used,$free,$percent,$mount) = split;
+                       print <<END
 <tr>
 <td align='center'>$device</td>
 <td align='center'>$mount</td>
@@ -128,33 +134,35 @@ END
 <td>
 END
 ;
-      &percentbar($percent);
-      print <<END
+                       &percentbar($percent);
+                       print <<END
 </td>
 <td align='left'>$percent</td>
 </tr>
 END
 ;
-   }
-}
-close DF;
-my @iostat1 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$1}');
-my @iostat2 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$5}');
-my @iostat3 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$6}');
-print "<tr><td colspan='3'>&nbsp;\n<tr><td colspan='3'><h3>transfers</h3></td></tr>";
-my $i=0;
-
-for(my $i = 1; $i <= $#iostat1; $i++)
-{
-if ( $i eq '1' ){print "<tr><td align='center' class='boldbase'><b>Device</b></td><td align='center' class='boldbase'><b>MB read</b></td><td align='center' class='boldbase'><b>MB writen</b></td></tr>";}
-else {print "<tr><td align='center'>$iostat1[$i]</td><td align='center'>$iostat2[$i]</td><td align='center'>$iostat3[$i]</td></tr>";}
-}
-print "</table>\n";
-&Header::closebox();
-
-&Header::closebigbox();
+               }
+       }
+       close DF;
+       my @iostat1 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$1}');
+       my @iostat2 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$5}');
+       my @iostat3 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$6}');
+       print "<tr><td colspan='3'>&nbsp;\n<tr><td colspan='3'><h3>transfers</h3></td></tr>";
+       my $i=0;
+
+       for(my $i = 1; $i <= $#iostat1; $i++){
+               if ( $i eq '1' ){
+                       print "<tr><td align='center' class='boldbase'><b>Device</b></td><td align='center' class='boldbase'><b>MB read</b></td><td align='center' class='boldbase'><b>MB writen</b></td></tr>";
+               }else{
+                       print "<tr><td align='center'>$iostat1[$i]</td><td align='center'>$iostat2[$i]</td><td align='center'>$iostat3[$i]</td></tr>";
+               }
+       }
+       print "</table>\n";
+       &Header::closebox();
 
-&Header::closepage();
+       &Header::closebigbox();
+       &Header::closepage();
+}
 
 sub percentbar
 {
@@ -184,44 +192,33 @@ END
 }
 
 sub diskbox {
- my $disk = $_[0];
- chomp $disk;
- my @status;
-    if (-e "$Header::graphdir/disk-$disk-day.png") {
-                 &Header::openbox('100%', 'center', "Disk $disk $Lang::tr{'graph'}");
-                 my $ftime = localtime((stat("$Header::graphdir/disk-$disk-day.png"))[9]);
-                 print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-                 print "<a href='/cgi-bin/graphs.cgi?graph=disk-$disk'>";
-                 print "<img alt='' src='/graphs/disk-$disk-day.png' border='0' />";
-                 print "</a>";
-                 print "<br />\n";
-
-      if (-e "/tmp/hddstatus") {
-        open(DATEI, "</tmp/hddstatus") || die "Datei nicht gefunden";
-        my  @diskstate = <DATEI>;
-        close(DATEI);
-
-        foreach (@diskstate){
-          if ( $_ =~/$disk/ ){@status = split(/-/,$_);}
-        }
-
-        if ( $status[1]=~/standby/){
-          my $ftime = localtime((stat("/tmp/hddshutdown-$disk"))[9]);
-          print"<B>Disk $disk status:<font color=#FF0000>".$status[1]."</font></B> (since $ftime)";
-        }
-        else{
-          print"<B>Disk $disk status:<font color=#00FF00>".$status[1]."</font></B>";
-        }
-      }
-                 my $smart = `/usr/local/bin/smartctrl $disk`;
-                       $smart = &Header::cleanhtml($smart);
-                       print <<END
-                               <br /><input type="button" onClick="swapVisibility('smart_$disk')" value="$Lang::tr{'smart information'}" />
-                               <div id='smart_$disk' style='display: none'>
-                                       <hr /><table border=0><tr><td align=left><pre>$smart</pre></table>
-                               </div>
+       my $disk = $_[0];
+       chomp $disk;
+       my @status;
+       if (-e "/tmp/hddstatus"){
+               open(DATEI, "</tmp/hddstatus") || die "Datei nicht gefunden";
+               my  @diskstate = <DATEI>;
+               close(DATEI);
+
+               foreach (@diskstate){
+                       if ( $_ =~/$disk/ ){@status = split(/-/,$_);}
+               }
+
+               if ( $status[1]=~/standby/){
+                       my $ftime = localtime((stat("/tmp/hddshutdown-$disk"))[9]);
+                       print"<B>Disk $disk status:<font color=#FF0000>".$status[1]."</font></B> (since $ftime)";
+               }else{
+                       print"<B>Disk $disk status:<font color=#00FF00>".$status[1]."</font></B>";
+               }
+       }
+
+       my $smart = `/usr/local/bin/smartctrl $disk`;
+       $smart = &Header::cleanhtml($smart);
+       print <<END
+<br /><input type="button" onClick="swapVisibility('smart_$disk')" value="$Lang::tr{'smart information'}" />
+<div id='smart_$disk' style='display: none'>
+       <hr /><table border=0><tr><td align=left><pre>$smart</pre></table>
+</div>
 END
 ;
-      &Header::closebox();
-               }
 }
index ed73fb3f80e9671840825e5b667c1f20fd2720be..35ce7a0f1137882caa80af8c82904c8705f6622e 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -30,57 +30,51 @@ require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 require "${General::swroot}/graphs.pl";
 
-my %cgiparams=();
+my %color = ();
+my %mainsettings = ();
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
 
-&Graphs::updatememgraph ("day");
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
 
-&Header::showhttpheaders();
-&Header::getcgihash(\%cgiparams);
-&Header::openpage($Lang::tr{'memory information'}, 1, '');
-&Header::openbigbox('100%', 'left');
+if ( $querry[0] =~ "memory"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatememorygraph($querry[1]);
+}elsif ( $querry[0] =~ "swap"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updateswapgraph($querry[1]);
+}else{
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'memory information'}, 1, '');
+       &Header::openbigbox('100%', 'left');
 
-&Header::openbox('100%', 'center', "Memory $Lang::tr{'graph'}");
-if (-e "$Header::graphdir/memory-day.png") {
-       my $ftime = localtime((stat("$Header::graphdir/memory-day.png"))[9]);
-       print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-       print "<a href='/cgi-bin/graphs.cgi?graph=memory'>";
-       print "<img alt='' src='/graphs/memory-day.png' border='0' />";
-       print "</a>";
-} else {
-       print $Lang::tr{'no information available'};
-}
-print "<br />\n";
-&Header::closebox();
+       &Header::openbox('100%', 'center', "Memory $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("memory.cgi","memory","day");
+       &Header::closebox();
 
-&Header::openbox('100%', 'center', "Swap $Lang::tr{'graph'}");
-if (-e "$Header::graphdir/swap-day.png") {
-       my $ftime = localtime((stat("$Header::graphdir/swap-day.png"))[9]);
-       print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-       print "<a href='/cgi-bin/graphs.cgi?graph=swap'>";
-       print "<img alt='' src='/graphs/swap-day.png' border='0' />";
-       print "</a>";
-} else {
-       print $Lang::tr{'no information available'};
-}
-print "<br />\n";
-&Header::closebox();
+       &Header::openbox('100%', 'center', "Swap $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("memory.cgi","swap","day");
+       &Header::closebox();
+       
+       &Header::openbox('100%', 'center', $Lang::tr{'memory'});
+       print "<table width='95%' cellspacing='5'>";
+       my $ram=0;
+       my $size=0;
+       my $used=0;
+       my $free=0;
+       my $percent=0;
+       my $shared=0;
+       my $buffers=0;
+       my $cached=0;
 
-&Header::openbox('100%', 'center', $Lang::tr{'memory'});
-print "<table width='95%' cellspacing='5'>";
-my $ram=0;
-my $size=0;
-my $used=0;
-my $free=0;
-my $percent=0;
-my $shared=0;
-my $buffers=0;
-my $cached=0;
-open(FREE,'/usr/bin/free |');
-while(<FREE>)
-{
-        if ($_ =~ m/^\s+total\s+used\s+free\s+shared\s+buffers\s+cached$/ )
-        {
-    print <<END
+       open(FREE,'/usr/bin/free |');
+       while(<FREE>){
+               if ($_ =~ m/^\s+total\s+used\s+free\s+shared\s+buffers\s+cached$/ ){
+                       print <<END
 <tr>
 <td align='center'>&nbsp;</td>
 <td align='center' class='boldbase'><b>$Lang::tr{'size'}</b></td>
@@ -90,52 +84,51 @@ while(<FREE>)
 </tr>
 END
 ;
-  } else {
-    if ($_ =~ m/^Mem:\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)$/) {
-      ($ram,$size,$used,$free,$shared,$buffers,$cached) = ($1,$1,$2,$3,$4,$5,$6);
-      ($percent = ($used/$size)*100) =~ s/^(\d+)(\.\d+)?$/$1%/;
-      print <<END
+               }else{
+                       if ($_ =~ m/^Mem:\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)$/){
+                               ($ram,$size,$used,$free,$shared,$buffers,$cached) = ($1,$1,$2,$3,$4,$5,$6);
+                               ($percent = ($used/$size)*100) =~ s/^(\d+)(\.\d+)?$/$1%/;
+                               print <<END
 <tr>
 <td class='boldbase'><b>$Lang::tr{'ram'}</b></td>
 <td align='center'>$size  KB</td>
 END
 ;
-    } elsif ($_ =~ m/^Swap:\s+(\d+)\s+(\d+)\s+(\d+)$/) {
-      ($size,$used,$free) = ($1,$2,$3);
-      if ($size != 0)
-      {
-        ($percent = ($used/$size)*100) =~ s/^(\d+)(\.\d+)?$/$1%/;
-      } else {
-        ($percent = '');
-      }
-      print <<END
+                       }elsif($_ =~ m/^Swap:\s+(\d+)\s+(\d+)\s+(\d+)$/){
+                               ($size,$used,$free) = ($1,$2,$3);
+                               if ($size != 0){
+                                       ($percent = ($used/$size)*100) =~ s/^(\d+)(\.\d+)?$/$1%/;
+                               }else{
+                                       ($percent = '');
+                               }
+                               print <<END
 <tr>
 <td class='boldbase'><b>$Lang::tr{'swap'}</b></td>
 <td align='center'>$size  KB</td>
 END
 ;
-    } elsif ($ram and $_ =~ m/^-\/\+ buffers\/cache:\s+(\d+)\s+(\d+)$/ ) {
-      ($used,$free) = ($1,$2);
-      ($percent = ($used/$ram)*100) =~ s/^(\d+)(\.\d+)?$/$1%/;
-      print "<tr><td colspan='2' class='boldbase'><b>$Lang::tr{'excluding buffers and cache'}</b></td>"
-    }
-    print <<END
+                       }elsif($ram and $_ =~ m/^-\/\+ buffers\/cache:\s+(\d+)\s+(\d+)$/ ){
+                               ($used,$free) = ($1,$2);
+                               ($percent = ($used/$ram)*100) =~ s/^(\d+)(\.\d+)?$/$1%/;
+                               print "<tr><td colspan='2' class='boldbase'><b>$Lang::tr{'excluding buffers and cache'}</b></td>";
+                       }
+                       print <<END
 <td align='center'>$used KB</td>
 <td align='center'>$free KB</td>
 <td>
 END
 ;
-    &percentbar($percent);
-    print <<END
+                       &percentbar($percent);
+                       print <<END
 </td>
 <td align='left'>$percent</td>
 </tr>
 END
 ;
-  }
-}
-close FREE;
-print <<END
+               }
+       }
+       close FREE;
+       print <<END
 <tr><td class='boldbase' colspan='2'><br /></td></tr>
 <tr><td class='boldbase'><b>$Lang::tr{'shared'}</b></td><td align='center'>$shared KB</td></tr>
 <tr><td class='boldbase'><b>$Lang::tr{'buffers'}</b></td><td align='center'>$buffers KB</td></tr>
@@ -143,35 +136,33 @@ print <<END
 </table>
 END
 ;
-&Header::closebox();
+       &Header::closebox();
 
-&Header::closebigbox();
-
-&Header::closepage();
+       &Header::closebigbox();
+       &Header::closepage();
+}
 
-sub percentbar
-{
-  my $percent = $_[0];
-  my $fg = '#a0a0a0';
-  my $bg = '#e2e2e2';
+sub percentbar{
+       my $percent = $_[0];
+       my $fg = '#a0a0a0';
+       my $bg = '#e2e2e2';
 
-  if ($percent =~ m/^(\d+)%$/ )
-  {
-    print <<END
+       if ($percent =~ m/^(\d+)%$/ ){
+               print <<END
 <table width='100' border='1' cellspacing='0' cellpadding='0' style='border-width:1px;border-style:solid;border-color:$fg;width:100px;height:10px;'>
 <tr>
 END
 ;
-    if ($percent eq "100%") {
-      print "<td width='100%' bgcolor='$fg' style='background-color:$fg;border-style:solid;border-width:1px;border-color:$bg'>"
-    } elsif ($percent eq "0%") {
-      print "<td width='100%' bgcolor='$bg' style='background-color:$bg;border-style:solid;border-width:1px;border-color:$bg'>"
-    } else {
-      print "<td width='$percent' bgcolor='$fg' style='background-color:$fg;border-style:solid;border-width:1px;border-color:$bg'></td><td width='" . (100-$1) . "%' bgcolor='$bg' style='background-color:$bg;border-style:solid;border-width:1px;border-color:$bg'>"
-    }
-    print <<END
+               if ($percent eq "100%"){
+                       print "<td width='100%' bgcolor='$fg' style='background-color:$fg;border-style:solid;border-width:1px;border-color:$bg'>";
+               }elsif($percent eq "0%"){
+                       print "<td width='100%' bgcolor='$bg' style='background-color:$bg;border-style:solid;border-width:1px;border-color:$bg'>";
+               }else{
+                       print "<td width='$percent' bgcolor='$fg' style='background-color:$fg;border-style:solid;border-width:1px;border-color:$bg'></td><td width='" . (100-$1) . "%' bgcolor='$bg' style='background-color:$bg;border-style:solid;border-width:1px;border-color:$bg'>";
+               }
+               print <<END
 <img src='/images/null.gif' width='1' height='1' alt='' /></td></tr></table>
 END
 ;
-  }
+       }
 }
diff --git a/html/cgi-bin/netexternal.cgi b/html/cgi-bin/netexternal.cgi
new file mode 100755 (executable)
index 0000000..fba5760
--- /dev/null
@@ -0,0 +1,169 @@
+#!/usr/bin/perl
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+use strict;
+
+# enable only the following on debugging purpose
+#use warnings;
+#use CGI::Carp 'fatalsToBrowser';
+
+require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/lang.pl";
+require "${General::swroot}/header.pl";
+require "${General::swroot}/graphs.pl";
+
+my %color = ();
+my %mainsettings = ();
+my %netsettings=();
+&General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
+
+my @graphs=();
+my %dhcpinfo=();
+
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
+
+if ( $querry[0] ne~ ""){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updateifgraph($querry[0],$querry[1]);
+}else{
+
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'network traffic graphs external'}, 1, '');
+       &Header::openbigbox('100%', 'left');
+
+       if ($netsettings{'RED_TYPE'} ne 'PPPOE'){
+               if ($netsettings{'RED_DEV'} ne $netsettings{'GREEN_DEV'}){
+                       push (@graphs, ($netsettings{'RED_DEV'}));
+               }
+       }else{
+               push (@graphs, "ppp0");
+       }
+       
+       if (-e "/var/log/rrd/collectd/localhost/interface/if_octets-ipsec0.rrd"){
+               push (@graphs, ("ipsec0"));
+       }
+
+       if (-e "/var/log/rrd/collectd/localhost/interface/if_octets-tun0.rrd"){
+               push (@graphs, ("tun0"));
+       }
+
+       foreach (@graphs) {
+               &Header::openbox('100%', 'center', "$_ $Lang::tr{'graph'}");
+               &Graphs::makegraphbox("netexternal.cgi",$_,"day");
+               &Header::closebox();
+       }
+
+       if ( $netsettings{'CONFIG_TYPE'} =~ /^(1|2|3|4)$/  && $netsettings{'RED_TYPE'} eq "DHCP"){
+
+               &Header::openbox('100%', 'left', "RED $Lang::tr{'dhcp configuration'}");
+               if (-s "${General::swroot}/dhcpc/dhcpcd-$netsettings{'RED_DEV'}.info") {
+
+                       &General::readhash("${General::swroot}/dhcpc/dhcpcd-$netsettings{'RED_DEV'}.info", \%dhcpinfo);
+
+                       my $DNS1=`echo $dhcpinfo{'DNS'} | cut -f 1 -d ,`;
+                       my $DNS2=`echo $dhcpinfo{'DNS'} | cut -f 2 -d ,`;
+
+                       my $lsetme=0;
+                       my $leasetime="";
+                       if ($dhcpinfo{'LEASETIME'} ne "") {
+                               $lsetme=$dhcpinfo{'LEASETIME'};
+                               $lsetme=($lsetme/60);
+                               
+                               if ($lsetme > 59) {
+                                       $lsetme=($lsetme/60); $leasetime=$lsetme." Hour";
+                               }else{
+                                       $leasetime=$lsetme." Minute";
+                               }
+                               
+                               if ($lsetme > 1) {
+                                       $leasetime=$leasetime."s";
+                               }
+                       }
+
+                       my $rentme=0;
+                       my $rnwltime="";
+
+                       if ($dhcpinfo{'RENEWALTIME'} ne "") {
+                               $rentme=$dhcpinfo{'RENEWALTIME'};
+                               $rentme=($rentme/60);
+                               
+                               if ($rentme > 59){
+                                       $rentme=($rentme/60); $rnwltime=$rentme." Hour";
+                               }else{
+                                       $rnwltime=$rentme." Minute";
+                               }
+                               
+                               if ($rentme > 1){
+                                       $rnwltime=$rnwltime."s";
+                               }
+                       }
+
+                       my $maxtme=0;
+                       my $maxtime="";
+
+                       if ($dhcpinfo{'REBINDTIME'} ne "") {
+                               $maxtme=$dhcpinfo{'REBINDTIME'};
+                               $maxtme=($maxtme/60);
+
+                               if ($maxtme > 59){
+                                       $maxtme=($maxtme/60); $maxtime=$maxtme." Hour";
+                               } else {
+                                       $maxtime=$maxtme." Minute";
+                               }
+
+                               if ($maxtme > 1) {
+                                       $maxtime=$maxtime."s";
+                               }
+                       }
+
+                       print "<table width='100%'>";
+
+                       if ($dhcpinfo{'HOSTNAME'}) {
+                               print "<tr><td width='30%'>$Lang::tr{'hostname'}</td><td>$dhcpinfo{'HOSTNAME'}.$dhcpinfo{'DOMAIN'}</td></tr>\n";
+                       } else {
+                               print "<tr><td width='30%'>$Lang::tr{'domain'}</td><td>$dhcpinfo{'DOMAIN'}</td></tr>\n";
+                       }
+
+                       print <<END
+<tr><td>$Lang::tr{'gateway'}</td><td>$dhcpinfo{'GATEWAY'}</td></tr>
+<tr><td>$Lang::tr{'primary dns'}</td><td>$DNS1</td></tr>
+<tr><td>$Lang::tr{'secondary dns'}</td><td>$DNS2</td></tr>
+<tr><td>$Lang::tr{'dhcp server'}</td><td>$dhcpinfo{'DHCPSIADDR'}</td></tr>
+<tr><td>$Lang::tr{'def lease time'}</td><td>$leasetime</td></tr>
+<tr><td>$Lang::tr{'default renewal time'}</td><td>$rnwltime</td></tr>
+<tr><td>$Lang::tr{'max renewal time'}</td><td>$maxtime</td></tr>
+</table>
+END
+;
+               }else{
+                       print "$Lang::tr{'no dhcp lease'}";
+               }
+               &Header::closebox();
+       }
+
+       &Header::closebigbox();
+       &Header::closepage();
+}      
diff --git a/html/cgi-bin/netinternal.cgi b/html/cgi-bin/netinternal.cgi
new file mode 100755 (executable)
index 0000000..bf6840f
--- /dev/null
@@ -0,0 +1,87 @@
+#!/usr/bin/perl
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+use strict;
+
+# enable only the following on debugging purpose
+#use warnings;
+#use CGI::Carp 'fatalsToBrowser';
+
+require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/lang.pl";
+require "${General::swroot}/header.pl";
+require "${General::swroot}/graphs.pl";
+
+my %color = ();
+my %mainsettings = ();
+my %netsettings=();
+&General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
+
+my @graphs=();
+my @wireless=();
+
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
+$querry[2] = '' unless defined $querry[2];
+
+if ( $querry[0] =~ /wireless/ ){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       $querry[0] =~ s/wireless//g;
+       &Graphs::updatewirelessgraph($querry[0],$querry[1]);
+}elsif ( $querry[0] ne "" ){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updateifgraph($querry[0],$querry[1]);
+}else{
+
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'network traffic graphs internal'}, 1, '');
+       &Header::openbigbox('100%', 'left');
+
+       push (@graphs, ($netsettings{'GREEN_DEV'}));
+       if ($netsettings{'BLUE_DEV'}) {push (@graphs, ($netsettings{'BLUE_DEV'})); }
+       if ($netsettings{'ORANGE_DEV'}) {push (@graphs, ($netsettings{'ORANGE_DEV'})); }
+
+       my @wirelessgraphs = `ls -dA /var/log/rrd/collectd/localhost/wireless*`;
+       foreach (@wirelessgraphs){
+               $_ =~ /(.*)\/wireless-(.*)/;
+               push(@wireless,$2);
+       }
+
+       foreach (@graphs) {
+               &Header::openbox('100%', 'center', "$_ $Lang::tr{'graph'}");
+               &Graphs::makegraphbox("netinternal.cgi",$_,"day");
+               &Header::closebox();
+       }
+
+       foreach (@wireless) {
+               &Header::openbox('100%', 'center', "Wireless $_ $Lang::tr{'graph'}");
+               &Graphs::makegraphbox("netinternal.cgi","wireless".$_,"day");
+               &Header::closebox();
+       }
+
+       &Header::closebigbox();
+       &Header::closepage();
+}      
old mode 100644 (file)
new mode 100755 (executable)
similarity index 55%
rename from html/cgi-bin/proxygraphs.cgi
rename to html/cgi-bin/netother.cgi
index c0f5428..52da9c8
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -28,50 +28,49 @@ use strict;
 require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
+require "${General::swroot}/graphs.pl";
 
-my %cgiparams=();
-my %pppsettings=();
-my %netsettings=();
-my @graphs=();
+my %color = ();
+my %mainsettings = ();
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
 
-&Header::showhttpheaders();
+my @pings=();
 
-my $dir = "/srv/web/ipfire/html/sgraph";
-$cgiparams{'ACTION'} = '';
-&Header::getcgihash(\%cgiparams);
-my $sgraphdir = "/srv/web/ipfire/html/sgraph";
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
 
-&Header::openpage($Lang::tr{'proxy access graphs'}, 1, '');
+if ( $querry[0] =~ "fwhits"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatefwhitsgraph($querry[0],$querry[1]);
+}elsif ( $querry[0] ne ""){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatepinggraph($querry[0],$querry[1]);
+}else{
 
-&Header::openbigbox('100%', 'left');
-
-&Header::openbox('100%', 'left', $Lang::tr{'proxy access graphs'} . ":" );
-
-if (open(IPACHTML, "$sgraphdir/index.html"))
-{
-       my $skip = 1;
-       while (<IPACHTML>)
-       {
-               $skip = 1 if /^<HR>$/;
-               if ($skip)
-               {
-                       $skip = 0 if /<H1>/;
-                       next;
-               }
-               s/<IMG SRC=([^"'>]+)>/<img src='\/sgraph\/$1' alt='Graph' \/>/;
-               s/<HR>/<hr \/>/g;
-               s/<BR>/<br \/>/g;
-               s/<([^>]*)>/\L<$1>\E/g;
-               s/(size|align|border|color)=([^'"> ]+)/$1='$2'/g;
-               print;
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'network traffic graphs others'}, 1, '');
+       &Header::openbigbox('100%', 'left');
+       
+       my @pinggraphs = `ls -dA /var/log/rrd/collectd/localhost/ping/*`;
+       foreach (@pinggraphs){
+               $_ =~ /(.*)\/ping\/ping-(.*)\.rrd/;
+               push(@pings,$2);
        }
-       close(IPACHTML);
-}
-else {
-       print $Lang::tr{'no information available'}; }
 
-&Header::closebox();
+       foreach (@pings) {
+               &Header::openbox('100%', 'center', "$_ $Lang::tr{'graph'}");
+               &Graphs::makegraphbox("netother.cgi",$_,"day");
+               &Header::closebox();
+       }
 
-&Header::closebigbox();
+       &Header::openbox('100%', 'center', "Firewall Hits $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("netother.cgi","fwhits","day");
+       &Header::closebox();
 
-&Header::closepage();
+       &Header::closebigbox();
+       &Header::closepage();
+}      
diff --git a/html/cgi-bin/network.cgi b/html/cgi-bin/network.cgi
deleted file mode 100644 (file)
index 1434bd1..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-#!/usr/bin/perl
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
-#                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
-# it under the terms of the GNU General Public License as published by        #
-# the Free Software Foundation, either version 3 of the License, or           #
-# (at your option) any later version.                                         #
-#                                                                             #
-# This program is distributed in the hope that it will be useful,             #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
-# GNU General Public License for more details.                                #
-#                                                                             #
-# You should have received a copy of the GNU General Public License           #
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-
-use strict;
-
-# enable only the following on debugging purpose
-#use warnings;
-#use CGI::Carp 'fatalsToBrowser';
-
-require '/var/ipfire/general-functions.pl';
-require "${General::swroot}/lang.pl";
-require "${General::swroot}/header.pl";
-require "${General::swroot}/graphs.pl";
-
-my %cgiparams=();
-my %pppsettings=();
-my %netsettings=();
-my @cgiparams=();
-my @graphs=();
-my @pings=();
-my @wireless=();
-my $iface='';
-my %dhcpsettings=();
-my %dhcpinfo=();
-my $output='';
-
-&Header::showhttpheaders();
-
-&General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
-
-$ENV{'QUERY_STRING'} =~ s/&//g;
-@cgiparams = split(/network=/,$ENV{'QUERY_STRING'});
-$cgiparams[1] = '' unless defined $cgiparams[1];
-
-if ($cgiparams[1] =~ /red/) {
-       &Header::openpage($Lang::tr{'network traffic graphs external'}, 1, '');
-       if ($netsettings{'RED_TYPE'} ne 'PPPOE') {
-           if ($netsettings{'RED_DEV'} ne $netsettings{'GREEN_DEV'}) {
-               push (@graphs, ($netsettings{'RED_DEV'}));
-           }
-       } else {
-           push (@graphs, "ppp0");
-       }
-       if (-e "/var/log/rrd/collectd/localhost/interface/if_octets-ipsec0.rrd") {push (@graphs, ("ipsec0"));}
-       if (-e "/var/log/rrd/collectd/localhost/interface/if_octets-tun0.rrd") {push (@graphs, ("tun0"));}
-}elsif ($cgiparams[1] =~ /other/) {
-       &Header::openpage($Lang::tr{'network traffic graphs others'}, 1, '');
-       my @pinggraphs = `ls -dA /var/log/rrd/collectd/localhost/ping/*`;
-       foreach (@pinggraphs){
-               $_ =~ /(.*)\/ping\/ping-(.*)\.rrd/;
-               push(@pings,$2);
-       }
-       push (@graphs, ("fwhits"));
-
-}else {
-       &Header::openpage($Lang::tr{'network traffic graphs internal'}, 1, '');
-       push (@graphs, ($netsettings{'GREEN_DEV'}));
-       if ($netsettings{'BLUE_DEV'}) {
-               push (@graphs, ($netsettings{'BLUE_DEV'})); }
-       if ($netsettings{'ORANGE_DEV'}) {
-               push (@graphs, ($netsettings{'ORANGE_DEV'})); }
-       my @wirelessgraphs = `ls -dA /var/log/rrd/collectd/localhost/wireless*`;
-       foreach (@wirelessgraphs){
-               $_ =~ /(.*)\/wireless-(.*)/;
-               push(@wireless,$2);
-       }
-}
-
-&Header::openbigbox('100%', 'left');
-
-foreach my $graphname (@pings) {
-
-  if ($graphname eq "gateway" )
-  {  &Graphs::updatepinggraph("day","gateway"); }
-  else
-  {  &Graphs::updatepinggraph("day","$graphname"); }
-
-       &Header::openbox('100%', 'center', "$graphname $Lang::tr{'graph'}");
-       if (-e "$Header::graphdir/${graphname}-day.png") {
-               my $ftime = localtime((stat("$Header::graphdir/${graphname}-day.png"))[9]);
-               print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<a href='/cgi-bin/graphs.cgi?graph=$graphname&graph=ping'>";
-               print "<img alt='' src='/graphs/${graphname}-day.png' border='0' />";
-               print "</a>";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-       print "<br />\n";
-       &Header::closebox();
-}
-
-foreach my $graphname (@graphs) {
-
-  if ($graphname eq "fwhits" )
-  {  &Graphs::updatefwhitsgraph("day");  }
-  else
-  {  &Graphs::updateifgraph($graphname, "day");  }
-
-       &Header::openbox('100%', 'center', "$graphname $Lang::tr{'graph'}");
-       if (-e "$Header::graphdir/${graphname}-day.png") {
-               my $ftime = localtime((stat("$Header::graphdir/${graphname}-day.png"))[9]);
-               print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<a href='/cgi-bin/graphs.cgi?graph=$graphname'>";
-               print "<img alt='' src='/graphs/${graphname}-day.png' border='0' />";
-               print "</a>";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-       print "<br />\n";
-       &Header::closebox();
-}
-
-foreach my $graphname (@wireless) {
-
-       &Graphs::wireless("day",$graphname);
-       
-       &Header::openbox('100%', 'center', "wireless $graphname $Lang::tr{'graph'}");
-       if (-e "$Header::graphdir/wireless-${graphname}-day.png") {
-               my $ftime = localtime((stat("$Header::graphdir/wireless-${graphname}-day.png"))[9]);
-               print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<a href='/cgi-bin/graphs.cgi?graph=wireless&graph=$graphname'>";
-               print "<img alt='' src='/graphs/wireless-${graphname}-day.png' border='0' />";
-               print "</a>";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-       print "<br />\n";
-       &Header::closebox();
-}
-
-if ($cgiparams[1] =~ /red/) {
-       
-       if ( $netsettings{'CONFIG_TYPE'} =~ /^(1|2|3|4)$/  && $netsettings{'RED_TYPE'} eq "DHCP") {
-
-               &Header::openbox('100%', 'left', "RED $Lang::tr{'dhcp configuration'}");
-               if (-s "${General::swroot}/dhcpc/dhcpcd-$netsettings{'RED_DEV'}.info") {
-
-                       &General::readhash("${General::swroot}/dhcpc/dhcpcd-$netsettings{'RED_DEV'}.info", \%dhcpinfo);
-
-                       my $DNS1=`echo $dhcpinfo{'DNS'} | cut -f 1 -d ,`;
-                       my $DNS2=`echo $dhcpinfo{'DNS'} | cut -f 2 -d ,`;
-
-                       my $lsetme=0;
-                       my $leasetime="";
-                       if ($dhcpinfo{'LEASETIME'} ne "") {
-                               $lsetme=$dhcpinfo{'LEASETIME'};
-                               $lsetme=($lsetme/60);
-                               if ($lsetme > 59) {
-                                       $lsetme=($lsetme/60); $leasetime=$lsetme." Hour";
-                               } else {
-                               $leasetime=$lsetme." Minute";
-                               }
-                               if ($lsetme > 1) {
-                                       $leasetime=$leasetime."s";
-                               }
-                       }
-                       my $rentme=0;
-                       my $rnwltime="";
-                       if ($dhcpinfo{'RENEWALTIME'} ne "") {
-                               $rentme=$dhcpinfo{'RENEWALTIME'};
-                               $rentme=($rentme/60);
-                               if ($rentme > 59){
-                                       $rentme=($rentme/60); $rnwltime=$rentme." Hour";
-                               } else {
-                                       $rnwltime=$rentme." Minute";
-                               }
-                               if ($rentme > 1){
-                                       $rnwltime=$rnwltime."s";
-                               }
-                       }
-                       my $maxtme=0;
-                       my $maxtime="";
-                       if ($dhcpinfo{'REBINDTIME'} ne "") {
-                               $maxtme=$dhcpinfo{'REBINDTIME'};
-                               $maxtme=($maxtme/60);
-                               if ($maxtme > 59){
-                                       $maxtme=($maxtme/60); $maxtime=$maxtme." Hour";
-                               } else {
-                                       $maxtime=$maxtme." Minute";
-                               }
-                               if ($maxtme > 1) {
-                                       $maxtime=$maxtime."s";
-                               }
-                       }
-
-                       print "<table width='100%'>";
-                       if ($dhcpinfo{'HOSTNAME'}) {
-                               print "<tr><td width='30%'>$Lang::tr{'hostname'}</td><td>$dhcpinfo{'HOSTNAME'}.$dhcpinfo{'DOMAIN'}</td></tr>\n";
-                       } else {
-                               print "<tr><td width='30%'>$Lang::tr{'domain'}</td><td>$dhcpinfo{'DOMAIN'}</td></tr>\n";
-                       }
-                       print <<END
-               <tr><td>$Lang::tr{'gateway'}</td><td>$dhcpinfo{'GATEWAY'}</td></tr>
-               <tr><td>$Lang::tr{'primary dns'}</td><td>$DNS1</td></tr>
-               <tr><td>$Lang::tr{'secondary dns'}</td><td>$DNS2</td></tr>
-               <tr><td>$Lang::tr{'dhcp server'}</td><td>$dhcpinfo{'DHCPSIADDR'}</td></tr>
-               <tr><td>$Lang::tr{'def lease time'}</td><td>$leasetime</td></tr>
-               <tr><td>$Lang::tr{'default renewal time'}</td><td>$rnwltime</td></tr>
-               <tr><td>$Lang::tr{'max renewal time'}</td><td>$maxtime</td></tr>
-           </table>
-END
-           ;
-               }
-               else
-               {
-                       print "$Lang::tr{'no dhcp lease'}";
-               }
-               &Header::closebox();
-       }
-
-       if ($dhcpsettings{'ENABLE_GREEN'} eq 'on' || $dhcpsettings{'ENABLE_BLUE'} eq 'on') {
-               &Header::CheckSortOrder;
-               &Header::PrintActualLeases;
-       }
-       
-} else {
-
-       &Header::openbox('100%', 'left', $Lang::tr{'routing table entries'});
-       $output = `/sbin/ip route show`;
-       $output = &Header::cleanhtml($output,"y");
-       print "<pre>$output</pre>\n";
-       &Header::closebox();
-       
-       &Header::openbox('100%', 'left', $Lang::tr{'arp table entries'});
-       $output = `/sbin/ip neigh show`;
-       $output = &Header::cleanhtml($output,"y");
-       print "<pre>$output</pre>\n";
-       &Header::closebox();
-       
-}
-
-&Header::closebigbox();
-&Header::closepage();
index 746f7eece5aa95527a8994ccac2ade097417bf84..374b25f5ea39f7d0a71ba565ce96f2e2ab9094fe 100644 (file)
@@ -1378,6 +1378,7 @@ END
     }
     print CLIENTCONF "verb 3\r\n";
     print CLIENTCONF "ns-cert-type server\r\n";
+    print CLIENTCONF "tls-remote $vpnsettings{ROOTCERT_HOSTNAME}\r\n";
     close(CLIENTCONF);
     $zip->addFile( "$tempdir/$clientovpn", $clientovpn) or die "Can't add file $clientovpn\n";
     my $status = $zip->writeToFileNamed($zippathname);
index 3ddee0560cd1dbabdd8baa56f4c0d512ec219bbc..371c8f3ca1b62fb6ed652ef87040a86604b5cc6b 100644 (file)
@@ -64,8 +64,6 @@ my $portfile = "/var/ipfire/qos/portconfig";
 my $tosfile = "/var/ipfire/qos/tosconfig";
 &General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
 
-&Header::showhttpheaders();
-
 $qossettings{'ENABLED'} = 'off';
 $qossettings{'EDIT'} = 'no';
 $qossettings{'OUT_SPD'} = '';
@@ -120,8 +118,19 @@ my %mainsettings = ();
 &General::readhash("${General::swroot}/main/settings", \%mainsettings);
 &General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
 
-&Header::openpage('QoS', 1, '');
-&Header::openbigbox('100%', 'left', '', $errormessage);
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
+
+if ( $querry[0] ne ""){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updateqosgraph($querry[0],$querry[1]);
+}else{
+       &Header::showhttpheaders();
+
+       &Header::openpage('QoS', 1, '');
+       &Header::openbigbox('100%', 'left', '', $errormessage);
 
 ############################################################################################################################
 ############################################################################################################################
@@ -759,28 +768,12 @@ if ( ($qossettings{'DEFCLASS_INC'} eq '') || ($qossettings{'DEFCLASS_OUT'} eq ''
        exit
 }
 
-&Header::openbox('100%', 'center', $Lang::tr{'info'});
-&Graphs::overviewgraph("3240",$qossettings{'RED_DEV'});
-&Graphs::overviewgraph("3240",$qossettings{'IMQ_DEV'});
-print <<END
-       <table>
-               <tr><td colspan='9' align='center' valign='middle'><img alt="" src='/images/addblue.gif' />&nbsp;$Lang::tr{'add subclass'} | <img alt="" src='/images/addgreen.gif' />&nbsp;$Lang::tr{'Add Rule'} | <img alt="" src='/images/edit.gif' />&nbsp;$Lang::tr{'edit'} | <img alt="" src='/images/delete.gif' />&nbsp;$Lang::tr{'delete'} &nbsp;
-               <tr><td colspan='9' align='right' valign='middle'><b>$Lang::tr{'TOS Bits'}:</b>&nbsp;&nbsp;<b>0</b> - $Lang::tr{'disabled'} | <b>8</b> - $Lang::tr{'min delay'} | <b>4</b> - $Lang::tr{'max throughput'} | <b>2</b> - $Lang::tr{'max reliability'} | <b>1</b> - $Lang::tr{'min costs'} &nbsp;
-END
-;
-if (( -e "/srv/web/ipfire/html/graphs/qos-graph-$qossettings{'RED_DEV'}-3240.png") && ( -e "/srv/web/ipfire/html/graphs/qos-graph-$qossettings{'IMQ_DEV'}-3240.png")) {
-       print <<END
-               <tr><td colspan='9' align='center'><a href='/cgi-bin/qosgraph.cgi?graph=$qossettings{'RED_DEV'}'><img alt="" src="/graphs/qos-graph-$qossettings{'RED_DEV'}-3240.png" border='0' /></a></td></tr>
-               <tr><td colspan='9' align='center'><a href='/cgi-bin/qosgraph.cgi?graph=$qossettings{'IMQ_DEV'}'><img alt="" src="/graphs/qos-graph-$qossettings{'IMQ_DEV'}-3240.png" border='0' /></a></td></tr>
-END
-;}
-else
-{
-print "\t</table><br />".$Lang::tr{'no information available'};
-}
-print "\t</table>";
-
-&Header::closebox();
+       &Header::openbox('100%', 'center', "$qossettings{'RED_DEV'} $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("qos.cgi",$qossettings{'RED_DEV'},"hour","325");
+       &Header::closebox();
+       &Header::openbox('100%', 'center', "$qossettings{'IMQ_DEV'} $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("qos.cgi",$qossettings{'IMQ_DEV'},"hour","325");
+       &Header::closebox();
 
 &showclasses($qossettings{'RED_DEV'});
 &showclasses($qossettings{'IMQ_DEV'});
@@ -788,6 +781,8 @@ print "\t</table>";
 &Header::closebigbox();
 &Header::closepage();
 
+}
+
 ############################################################################################################################
 ############################################################################################################################
 
diff --git a/html/cgi-bin/qosgraph.cgi b/html/cgi-bin/qosgraph.cgi
deleted file mode 100644 (file)
index a01edf7..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/usr/bin/perl
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
-#                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
-# it under the terms of the GNU General Public License as published by        #
-# the Free Software Foundation, either version 3 of the License, or           #
-# (at your option) any later version.                                         #
-#                                                                             #
-# This program is distributed in the hope that it will be useful,             #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
-# GNU General Public License for more details.                                #
-#                                                                             #
-# You should have received a copy of the GNU General Public License           #
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-
-use strict;
-
-# enable only the following on debugging purpose
-#use warnings;
-#use CGI::Carp 'fatalsToBrowser';
-
-require '/var/ipfire/general-functions.pl';
-require "${General::swroot}/lang.pl";
-require "${General::swroot}/header.pl";
-require "${General::swroot}/graphs.pl";
-
-my @cgigraph=();
-my $errormessage = "";
-
-&Header::showhttpheaders();
-
-$ENV{'QUERY_STRING'} =~ s/&//g;
-@cgigraph = split(/graph=/,$ENV{'QUERY_STRING'});
-$cgigraph[1] = '' unless defined $cgigraph[1];
-
-&Graphs::overviewgraph("day",$cgigraph[1]);
-&Graphs::overviewgraph("week",$cgigraph[1]);
-&Graphs::overviewgraph("month",$cgigraph[1]);
-&Graphs::overviewgraph("year",$cgigraph[1]);
-
-&Header::openpage('QoS', 1, '');
-&Header::openbigbox('100%', 'left', '', $errormessage);
-&Header::openbox('100%', 'left', $cgigraph[1]);
-
-       if (-e "/srv/web/ipfire/html/graphs/qos-graph-$cgigraph[1]-day.png") {
-               my $ftime = localtime((stat("/srv/web/ipfire/html/graphs/qos-graph-$cgigraph[1]-day.png"))[9]);
-               print "<center>";
-               print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<img alt='' src='/graphs/qos-graph-$cgigraph[1]-day.png' border='0' /><hr />";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-
-       if (-e "/srv/web/ipfire/html/graphs/qos-graph-$cgigraph[1]-week.png") {
-               my $ftime = localtime((stat("/srv/web/ipfire/html/graphs/qos-graph-$cgigraph[1]-week.png"))[9]);
-               print "<center>";
-               print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<img alt='' src='/graphs/qos-graph-$cgigraph[1]-week.png' border='0' /><hr />";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-
-       if (-e "/srv/web/ipfire/html/graphs/qos-graph-$cgigraph[1]-month.png") {
-               my $ftime = localtime((stat("/srv/web/ipfire/html/graphs/qos-graph-$cgigraph[1]-month.png.png"))[9]);
-               print "<center>";
-               print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<img alt='' src='/graphs/qos-graph-$cgigraph[1]-month.png' border='0' /><hr />";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-       
-       if (-e "/srv/web/ipfire/html/graphs/qos-graph-$cgigraph[1]-year.png") {
-               my $ftime = localtime((stat("/srv/web/ipfire/html/graphs/qos-graph-$cgigraph[1]-year.png"))[9]);
-               print "<center>";
-               print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-               print "<img alt='' src='/graphs/qos-graph-$cgigraph[1]-year.png' border='0' /><hr />";
-       } else {
-               print $Lang::tr{'no information available'};
-       }
-       
-       print"<div align='center'><br/><a href='/cgi-bin/qos.cgi'>$Lang::tr{'back'}</a></div>";
-
-&Header::closebox();
-&Header::closebigbox();
-&Header::closepage();
index 1b781404c3a3cbae41c421d24101954ce5144f4a..dcd306ef7961af357bce4a7ef087af4894b27f3c 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -30,25 +30,22 @@ require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 require "${General::swroot}/graphs.pl";
 
-#workaround to suppress a warning when a variable is used only once
-my @dummy = ( ${Header::colourred} );
-undef (@dummy);
-
 my %color = ();
 my %mainsettings = ();
+my %netsettings=();
 &General::readhash("${General::swroot}/main/settings", \%mainsettings);
 &General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
-
-my %netsettings=();
 &General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
 
-&Graphs::updateprocessesgraph ("day");
+#workaround to suppress a warning when a variable is used only once
+my @dummy = ( ${Header::colourred} );
+undef (@dummy);
+
 
 my %cgiparams=();
 # Maps a nice printable name to the changing part of the pid file, which
 # is also the name of the program
-my %servicenames =
-(
+my %servicenames =(
        $Lang::tr{'dhcp server'} => 'dhcpd',
        $Lang::tr{'web server'} => 'httpd',
        $Lang::tr{'cron server'} => 'fcron',
@@ -65,65 +62,73 @@ my %servicenames =
 my $lines=0; # Used to count the outputlines to make different bgcolor
 
 my $iface = '';
-if (open(FILE, "${General::swroot}/red/iface"))
-{
+if (open(FILE, "${General::swroot}/red/iface")){
        $iface = <FILE>;
        close FILE;
        chomp $iface;
 }
+
 $servicenames{"$Lang::tr{'intrusion detection system'} (RED)"}   = "snort_${iface}";
 $servicenames{"$Lang::tr{'intrusion detection system'} (GREEN)"} = "snort_$netsettings{'GREEN_DEV'}";
-if ($netsettings{'ORANGE_DEV'} ne '') {
+
+if ($netsettings{'ORANGE_DEV'} ne ''){
        $servicenames{"$Lang::tr{'intrusion detection system'} (ORANGE)"} = "snort_$netsettings{'ORANGE_DEV'}";
 }
-if ($netsettings{'BLUE_DEV'} ne '') {
+if ($netsettings{'BLUE_DEV'} ne ''){
        $servicenames{"$Lang::tr{'intrusion detection system'} (BLUE)"} = "snort_$netsettings{'BLUE_DEV'}";
 }
 
-&Header::showhttpheaders();
-&Header::getcgihash(\%cgiparams);
-&Header::openpage($Lang::tr{'status information'}, 1, '');
-&Header::openbigbox('100%', 'left');
-
-&Header::openbox('100%', 'left', $Lang::tr{'services'});
-
-print <<END
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
+
+if ( $querry[0] =~ "processescpu"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updateprocessescpugraph($querry[1]);
+}elsif ( $querry[0] =~ "processesmemory"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updateprocessesmemorygraph($querry[1]);
+}else{
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'status information'}, 1, '');
+       &Header::openbigbox('100%', 'left');
+
+       &Header::openbox('100%', 'left', $Lang::tr{'services'});
+       print <<END
 <div align='center'>
 <table width='80%' cellspacing='1' border='0'>
 <tr bgcolor='$color{'color20'}'><td align='left'><b>$Lang::tr{'services'}</b></td><td align='center' ><b>$Lang::tr{'status'}</b></td><td align='center'><b>PID</b></td><td align='center'><b>$Lang::tr{'memory'}</b></td></tr>
 END
 ;
+       my $key = '';
+       foreach $key (sort keys %servicenames){
+               $lines++;
+               if ($lines % 2){
+                       print "<tr bgcolor='$color{'color22'}'>\n<td align='left'>$key</td>\n";
+               }else{
+                       print "<tr bgcolor='$color{'color20'}'>\n<td align='left'>$key</td>\n";
+               }
 
-my $key = '';
-foreach $key (sort keys %servicenames)
-{
-       $lines++;
-       if ($lines % 2)
-       {  print "<tr bgcolor='$color{'color22'}'>\n<td align='left'>$key</td>\n";}
-       else
-       {  print "<tr bgcolor='$color{'color20'}'>\n<td align='left'>$key</td>\n";}
-
-       my $shortname = $servicenames{$key};
-       my $status = &isrunning($shortname);
-
-       print "$status\n";
-       print "</tr>\n";
-}
-
-
-print "</table></div>\n";
+               my $shortname = $servicenames{$key};
+               my $status = &isrunning($shortname);
 
-&Header::closebox();
+               print "$status\n";
+               print "</tr>\n";
+       }
 
-&Header::openbox('100%', 'left', "Addon - $Lang::tr{services}");
+       print "</table></div>\n";
+       &Header::closebox();
 
-my $paramstr=$ENV{QUERY_STRING};
-my @param=split(/!/, $paramstr);
-if ($param[1] ne '') {
-    system("/usr/local/bin/addonctrl @param[0] @param[1] > /dev/null 2>&1");
-}
+       &Header::openbox('100%', 'left', "Addon - $Lang::tr{services}");
+       my $paramstr=$ENV{QUERY_STRING};
+       my @param=split(/!/, $paramstr);
+       if ($param[1] ne ''){
+               system("/usr/local/bin/addonctrl @param[0] @param[1] > /dev/null 2>&1");
+       }
 
-print <<END
+       print <<END
 <div align='center'>
 <table width='80%' cellspacing='1' border='0'>
 <tr bgcolor='$color{'color20'}'>
@@ -137,101 +142,76 @@ print <<END
 END
 ;
 
-my $lines=0; # Used to count the outputlines to make different bgcolor
-
-# Generate list of installed addon pak's
-my @pak = `find /opt/pakfire/db/installed/meta-* 2>/dev/null | cut -d"-" -f2`;
-foreach (@pak)
-{
-       chomp($_);
-
-       # Check which of the paks are services
-       my @svc = `find /etc/init.d/$_ 2>/dev/null | cut -d"/" -f4`;
-       foreach (@svc)
-       {
-           # blacklist some packages
-           #
-           # alsa has trouble with the volume saving and was not really stopped
-           #
-           chomp($_);
-           if ($_ ne "alsa")
-           {
-               $lines++;
-               if ($lines % 2)
-               {
-                   print "<tr bgcolor='$color{'color22'}'>";
-               }
-               else
-               {
-                   print "<tr bgcolor='$color{'color20'}'>";
+       my $lines=0; # Used to count the outputlines to make different bgcolor
+
+       # Generate list of installed addon pak's
+       my @pak = `find /opt/pakfire/db/installed/meta-* 2>/dev/null | cut -d"-" -f2`;
+       foreach (@pak){
+               chomp($_);
+
+               # Check which of the paks are services
+               my @svc = `find /etc/init.d/$_ 2>/dev/null | cut -d"/" -f4`;
+               foreach (@svc){
+                       # blacklist some packages
+                       #
+                       # alsa has trouble with the volume saving and was not really stopped
+                       #
+                       chomp($_);
+                       if ($_ ne "alsa"){
+                               $lines++;
+                               if ($lines % 2){
+                                       print "<tr bgcolor='$color{'color22'}'>";
+                               }else{
+                                       print "<tr bgcolor='$color{'color20'}'>";
+                               }
+                               print "<td align='left'>$_</td> ";
+                               my $status = isautorun($_);
+                               print "$status ";
+                               print "<td align='center'><A HREF=services.cgi?$_!start><img alt='$Lang::tr{'start'}' title='$Lang::tr{'start'}' src='/images/go-up.png' border='0' /></A></td>";
+                               print "<td align='center'><A HREF=services.cgi?$_!stop><img alt='$Lang::tr{'stop'}' title='$Lang::tr{'stop'}' src='/images/go-down.png' border='0' /></A></td> ";
+                               my $status = &isrunningaddon($_);
+                               $status =~ s/\\e\[[0-1]\;[0-9]+m//g;
+
+                               chomp($status);
+                               print "$status";
+                               print "</tr>";
+                       }
                }
-               print "<td align='left'>$_</td> ";
-               my $status = isautorun($_);
-               print "$status ";
-               print "<td align='center'><A HREF=services.cgi?$_!start><img alt='$Lang::tr{'start'}' title='$Lang::tr{'start'}' src='/images/go-up.png' border='0' /></A></td>";
-               print "<td align='center'><A HREF=services.cgi?$_!stop><img alt='$Lang::tr{'stop'}' title='$Lang::tr{'stop'}' src='/images/go-down.png' border='0' /></A></td> ";
-               my $status = &isrunningaddon($_);
-               $status =~ s/\\e\[[0-1]\;[0-9]+m//g;
-
-               chomp($status);
-               print "$status";
-               print "</tr>";
-           }
        }
-}
 
-print "</table></div>\n";
+       print "</table></div>\n";
+       &Header::closebox();
 
-&Header::closebox();
+       &Header::openbox('100%', 'center', "$Lang::tr{'processes'} $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("services.cgi","processescpu","day");
+       &Header::closebox();
 
-&Header::openbox('100%', 'center', "$Lang::tr{'processes'} $Lang::tr{'graph'}");
-if (-e "$Header::graphdir/processes-day.png") {
-       my $ftime = localtime((stat("$Header::graphdir/processes-day.png"))[9]);
-       print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-       print "<a href='/cgi-bin/graphs.cgi?graph=processes'>";
-       print "<img alt='' src='/graphs/processes-day.png' border='0' />";
-       print "</a>";
-} else {
-       print $Lang::tr{'no information available'};
-}
-print "<br />\n";
-&Header::closebox();
-
-&Header::openbox('100%', 'center', "$Lang::tr{'processes'} $Lang::tr{'memory'} $Lang::tr{'graph'}");
-if (-e "$Header::graphdir/processesmem-day.png") {
-       my $ftime = localtime((stat("$Header::graphdir/processesmem-day.png"))[9]);
-       print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-       print "<a href='/cgi-bin/graphs.cgi?graph=processesmem'>";
-       print "<img alt='' src='/graphs/processesmem-day.png' border='0' />";
-       print "</a>";
-} else {
-       print $Lang::tr{'no information available'};
+       &Header::openbox('100%', 'center', "$Lang::tr{'processes'} $Lang::tr{'memory'} $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("services.cgi","processesmemory","day");
+       &Header::closebox();
+
+       &Header::closebigbox();
+       &Header::closepage();
 }
-print "<br />\n";
-&Header::closebox();
-&Header::closebigbox();
-&Header::closepage();
 
-sub isautorun
-{
+sub isautorun{
        my $cmd = $_[0];
        my $status = "<td align='center'></td>";
        my $init = `find /etc/rc.d/rc3.d/S??${cmd} 2>/dev/null`;
        chomp ($init);
-       if ($init ne '') {
-       $status = "<td align='center'><A HREF=services.cgi?$_!disable><img alt='$Lang::tr{'deactivate'}' title='$Lang::tr{'deactivate'}' src='/images/on.gif' border='0' width='16' height='16' /></A></td>";
+       if ($init ne ''){
+               $status = "<td align='center'><A HREF=services.cgi?$_!disable><img alt='$Lang::tr{'deactivate'}' title='$Lang::tr{'deactivate'}' src='/images/on.gif' border='0' width='16' height='16' /></A></td>";
        }
        $init = `find /etc/rc.d/rc3.d/off/S??${cmd} 2>/dev/null`;
        chomp ($init);
-       if ($init ne '') {
-  $status = "<td align='center'><A HREF=services.cgi?$_!enable><img alt='$Lang::tr{'activate'}' title='$Lang::tr{'activate'}' src='/images/off.gif' border='0' width='16' height='16' /></A></td>";
+       if ($init ne ''){
+               $status = "<td align='center'><A HREF=services.cgi?$_!enable><img alt='$Lang::tr{'activate'}' title='$Lang::tr{'activate'}' src='/images/off.gif' border='0' width='16' height='16' /></A></td>";
        }
 
-return $status;
+       return $status;
 }
 
-sub isrunning
-{
+sub isrunning{
        my $cmd = $_[0];
        my $status = "<td align='center' bgcolor='${Header::colourred}'><font color='white'><b>$Lang::tr{'stopped'}</b></font></td><td colspan='2'></td>";
        my $pid = '';
@@ -247,7 +227,9 @@ sub isrunning
                close FILE;
                if (open(FILE, "/proc/${pid}/status")){
                        while (<FILE>){
-                               if (/^Name:\W+(.*)/) {$testcmd = $1; }
+                               if (/^Name:\W+(.*)/) {
+                                       $testcmd = $1;
+                               }
                        }
                        close FILE;
                }
@@ -256,13 +238,14 @@ sub isrunning
                                @memory = split(/ /,$temp);
                }
                close FILE;
-               if ($testcmd =~ /$exename/){$status = "<td align='center' bgcolor='${Header::colourgreen}'><font color='white'><b>$Lang::tr{'running'}</b></font></td><td align='center'>$pid</td><td align='center'>$memory[0] KB</td>";}
+               if ($testcmd =~ /$exename/){
+                       $status = "<td align='center' bgcolor='${Header::colourgreen}'><font color='white'><b>$Lang::tr{'running'}</b></font></td><td align='center'>$pid</td><td align='center'>$memory[0] KB</td>";
                }
-return $status;
+       }
+       return $status;
 }
 
-sub isrunningaddon
-{
+sub isrunningaddon{
        my $cmd = $_[0];
        my $status = "<td align='center' bgcolor='${Header::colourred}'><font color='white'><b>$Lang::tr{'stopped'}</b></font></td><td colspan='2'></td>";
        my $pid = '';
@@ -273,24 +256,29 @@ sub isrunningaddon
        my $testcmd = `/usr/local/bin/addonctrl $_ status`;
 
        if ( $testcmd =~ /is\ running/ && $testcmd !~ /is\ not\ running/){
-       $status = "<td align='center' bgcolor='${Header::colourgreen}'><font color='white'><b>$Lang::tr{'running'}</b></font></td>";
-       $testcmd =~ s/[a-z_]//gi;       $testcmd =~ s/\[[0-1]\;[0-9]+//gi;      $testcmd =~ s/[\(\)\.]//gi;     $testcmd =~ s/  //gi; $testcmd =~ s/\e//gi;
+               $status = "<td align='center' bgcolor='${Header::colourgreen}'><font color='white'><b>$Lang::tr{'running'}</b></font></td>";
+               $testcmd =~ s/[a-z_]//gi;
+               $testcmd =~ s/\[[0-1]\;[0-9]+//gi;
+               $testcmd =~ s/[\(\)\.]//gi;
+               $testcmd =~ s/  //gi;
+               $testcmd =~ s/\e//gi;
 
-       my @pid = split(/\s/,$testcmd);
-       $status .="<td align='center'>$pid[0]</td>";
+               my @pid = split(/\s/,$testcmd);
+               $status .="<td align='center'>$pid[0]</td>";
 
-       my $memory = 0;
+               my $memory = 0;
 
-       foreach (@pid){
-       chomp($_);
-       if (open(FILE, "/proc/$_/statm")){
+               foreach (@pid){
+                       chomp($_);
+                       if (open(FILE, "/proc/$_/statm")){
                                my $temp = <FILE>;
-                       @memory = split(/ /,$temp);
+                               @memory = split(/ /,$temp);
+                       }
+                       $memory+=$memory[0];
                }
-       $memory+=$memory[0];
-       }
-       $status .="<td align='center'>$memory KB</td>";
+               $status .="<td align='center'>$memory KB</td>";
+       }else{
+               $status = "<td align='center' bgcolor='${Header::colourred}'><font color='white'><b>$Lang::tr{'stopped'}</b></font></td><td colspan='2'></td>";
        }
-       else {$status = "<td align='center' bgcolor='${Header::colourred}'><font color='white'><b>$Lang::tr{'stopped'}</b></font></td><td colspan='2'></td>";}
-return $status;
+       return $status;
 }
index 5d852176b92baac5073f96cf9b2eeaff9f400a2b..3343ad57ffecdef09aca4eae15599344616f2023 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2008  Michael Tremer & Christian Schmidt                      #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -35,53 +35,41 @@ my %mainsettings = ();
 &General::readhash("${General::swroot}/main/settings", \%mainsettings);
 &General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
 
-my %cgiparams=();
+my @querry = split(/\?/,$ENV{'QUERY_STRING'});
+$querry[0] = '' unless defined $querry[0];
+$querry[1] = 'hour' unless defined $querry[1];
 
-# Generate Graphs from rrd Data
-&Graphs::updatecpugraph ("day");
-&Graphs::updatecpufreqgraph ("day");
-&Graphs::updateloadgraph ("day");
+if ( $querry[0] =~ "cpu"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatecpugraph($querry[1]);
+}elsif ( $querry[0] =~ "cpufreq"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updatecpufreqgraph($querry[1]);
+}elsif ( $querry[0] =~ "load"){
+       print "Content-type: image/png\n\n";
+       binmode(STDOUT);
+       &Graphs::updateloadgraph($querry[1]);
+}else{
+       &Header::showhttpheaders();
+       &Header::openpage($Lang::tr{'status information'}, 1, '');
+       &Header::openbigbox('100%', 'left');
 
-&Header::showhttpheaders();
-&Header::getcgihash(\%cgiparams);
-&Header::openpage($Lang::tr{'status information'}, 1, '');
-&Header::openbigbox('100%', 'left');
+       if ( -e "$mainsettings{'RRDLOG'}/collectd/localhost/cpufreq/cpufreq-0.rrd"){
+               &Header::openbox('100%', 'center', "CPU $Lang::tr{'graph'}");
+               &Graphs::makegraphbox("system.cgi","cpu","day","325");
+               &Header::closebox();
+       }
 
-&Header::openbox('100%', 'center', "CPU $Lang::tr{'graph'}");
-if (-e "$Header::graphdir/cpu-day.png") {
-       my $ftime = localtime((stat("$Header::graphdir/cpu-day.png"))[9]);
-       print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-       print "<a href='/cgi-bin/graphs.cgi?graph=cpu'>";
-       print "<img alt='' src='/graphs/cpu-day.png' border='0' />";
-       print "</a>";
-} else {
-       print $Lang::tr{'no information available'};
-}
-print "<br />\n";
-&Header::closebox();
+       &Header::openbox('100%', 'center', "CPU $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("system.cgi","cpu","day","325");
+       &Header::closebox();
 
-if (-e "$Header::graphdir/cpufreq-day.png") {
-    &Header::openbox('100%', 'center', "CPU Frequency $Lang::tr{'graph'}");
-       my $ftime = localtime((stat("$Header::graphdir/cpufreq-day.png"))[9]);
-       print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-       print "<a href='/cgi-bin/graphs.cgi?graph=cpufreq'>";
-       print "<img alt='' src='/graphs/cpufreq-day.png' border='0' />";
-       print "</a>";
-       print "<br />\n";
-    &Header::closebox();
-}
+       &Header::openbox('100%', 'center', "Load $Lang::tr{'graph'}");
+       &Graphs::makegraphbox("system.cgi","load","day");
+       &Header::closebox();
 
-&Header::openbox('100%', 'center', "Load $Lang::tr{'graph'}");
-if (-e "$Header::graphdir/load-day.png") {
-       my $ftime = localtime((stat("$Header::graphdir/load-day.png"))[9]);
-       print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
-       print "<a href='/cgi-bin/graphs.cgi?graph=load'>";
-       print "<img alt='' src='/graphs/load-day.png' border='0' />";
-       print "</a>";
-} else {
-       print $Lang::tr{'no information available'};
+       &Header::closebigbox();
+       &Header::closepage();
 }
-print "<br />\n";
-&Header::closebox();
-&Header::closebigbox();
-&Header::closepage();
diff --git a/html/cgi-bin/traffics.cgi b/html/cgi-bin/traffics.cgi
deleted file mode 100644 (file)
index af91150..0000000
+++ /dev/null
@@ -1,373 +0,0 @@
-#!/usr/bin/perl
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
-#                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
-# it under the terms of the GNU General Public License as published by        #
-# the Free Software Foundation, either version 3 of the License, or           #
-# (at your option) any later version.                                         #
-#                                                                             #
-# This program is distributed in the hope that it will be useful,             #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
-# GNU General Public License for more details.                                #
-#                                                                             #
-# You should have received a copy of the GNU General Public License           #
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-
-use strict;
-
-# enable only the following on debugging purpose
-#use warnings;
-#use CGI::Carp 'fatalsToBrowser';
-
-require '/var/ipfire/general-functions.pl';
-require "${General::swroot}/lang.pl";
-require "${General::swroot}/header.pl";
-require "${General::swroot}/net-traffic/net-traffic-admin.pl";
-require "${General::swroot}/net-traffic/net-traffic-lib.pl";
-
-my %color = ();
-my %mainsettings = ();
-&General::readhash("${General::swroot}/main/settings", \%mainsettings);
-&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
-
-my %cgiparams;
-my %netsettings;
-
-&General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
-
-my @days = ( 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31 );
-
-my @now = localtime(time);
-
-$now[5] = $now[5]+1900;
-
-$cgiparams{'STARTDAY'} = 10;
-$cgiparams{'STOPDAY'} = 11;
-$cgiparams{'STARTYEAR'} = $now[5];
-$cgiparams{'STOPYEAR'} = $now[5];
-
-if($NETTRAFF::settings{'MONTHLY_VOLUME_ON'} eq 'on')
-{
-       $cgiparams{'STARTDAY'} = $NETTRAFF::settings{'STARTDAY'};
-       $cgiparams{'STOPDAY'} = $NETTRAFF::settings{'STARTDAY'};
-}
-
-# this periode started last month
-if ($now[3] < $cgiparams{'STARTDAY'}) {
-       $cgiparams{'STARTMONTH'} = $now[4]-1;
-       $cgiparams{'STOPMONTH'} = $now[4];
-       # when current month is january we start in last year december
-       if ($cgiparams{'STOPMONTH'} == 0) {
-               $cgiparams{'STARTYEAR'} = $now[5]-1;
-               $cgiparams{'STARTMONTH'} = 11;
-       }
-}
-else {
-       $cgiparams{'STARTMONTH'} = $now[4];
-       $cgiparams{'STOPMONTH'} = $now[4]+1;
-       # when we are in december, this periode ends next year january
-       if ($cgiparams{'STARTMONTH'} == 11) {
-               $cgiparams{'STOPYEAR'} = $now[5]+1;
-               $cgiparams{'STOPMONTH'} = 0;
-       }
-}
-
-&Header::getcgihash(\%cgiparams);
-&Header::showhttpheaders();
-&Header::openpage($Lang::tr{'sstraffic'}, 1, '');
-&Header::openbigbox('100%', 'left');
-&Header::openbox('100%', 'left', "");
-
-print <<END;
-<table width='100%' align='center'>
-<tr>
-       <td width='90%' class='base' align='center'>
-               <form method='post' action='/cgi-bin/traffics.cgi'>
-               $Lang::tr{'trafficfrom'}
-               <select name='STARTDAY'>
-END
-
-foreach my $day (@days)
-{
-       print "\t<option ";
-       if ($day == $cgiparams{'STARTDAY'}) {
-               print 'selected=\'selected\' '; }
-       print "value='$day'>$day</option>\n";
-}
-print <<END;
-       </select>
-       <select name='STARTMONTH'>
-END
-
-foreach my $month (@NETTRAFF::months)
-{
-       print "\t<option ";
-       if ($month == $cgiparams{'STARTMONTH'}) {
-               print 'selected=\'selected\' '; }
-       print "value='$month'>$NETTRAFF::longmonths[$month]</option>\n";
-}
-
-print <<END;
-       </select>
-       <select name='STARTYEAR'>
-END
-
-foreach my $year (@NETTRAFF::years) {
-       print "\t<option ";
-       if ($year == $cgiparams{'STARTYEAR'}) {
-               print 'selected=\'selected\' '; }
-       print "value='$year'>$year</option>\n";
-}
-
-print <<END;
-       </select>
-       $Lang::tr{'trafficto'}
-       <select name='STOPDAY'>
-END
-
-foreach my $day (@days)
-{
-       print "\t<option ";
-       if ($day == $cgiparams{'STOPDAY'})
-               {
-               print 'selected=\'selected\' '; }
-       print "value='$day'>$day</option>\n";
-}
-
-print <<END;
-       </select>
-       <select name='STOPMONTH'>
-END
-
-foreach my $month (@NETTRAFF::months)
-{
-       print "\t<option ";
-       if ($month == $cgiparams{'STOPMONTH'}) {
-               print 'selected=\'selected\' '; }
-       print "value='$month'>$NETTRAFF::longmonths[$month]</option>\n";
-}
-
-print <<END;
-       </select>
-       <select name='STOPYEAR'>
-END
-
-foreach my $year (@NETTRAFF::years) {
-       print "\t<option ";
-       if ($year == $cgiparams{'STOPYEAR'}) {
-               print 'selected=\'selected\' '; }
-       print "value='$year'>$year</option>\n";
-}
-
-
-print <<END;
-                       </select>
-                       <input type='submit' name='ACTION' value='$Lang::tr{'update'}' />
-               </form>
-       </td>
-       <td width='5%' align='center'>
-               <form method='post' action='/cgi-bin/traffic.cgi'>
-               <input type='submit' name='ACTION' value=' > ' />
-               </form>
-       </td>
-       </tr>
-       </table>
-END
-
-&Header::closebox();
-
-&Header::openbox('100%', 'left', "$Lang::tr{'traffics'}");
-
-my $dateWidth = '20%';
-my $netWidth = '34%';
-my $inOutWidth = '17%';
-
-# 4 networks
-if ($netsettings{'CONFIG_TYPE'} =~ /^(4)$/) {
-       $dateWidth = '12%';
-       $netWidth = '22%';
-       $inOutWidth = '11%';
-}
-# 3 networks
-if ($netsettings{'CONFIG_TYPE'} =~ /^(2|3)$/) {
-       $dateWidth = '16%';
-       $netWidth = '28%';
-       $inOutWidth = '14%';
-}
-
-print <<END;
-       <table width='100%'>
-       <tr>
-               <td width='$dateWidth' align='center' class='boldbase'></td>
-               <td width='$netWidth' align='center' class='boldbase' ><b>$Lang::tr{'trafficgreen'}</b></td>
-END
-
-if ($netsettings{'CONFIG_TYPE'} =~ /^(3|4)$/) {
-       print "<td width='$netWidth' align='center' class='boldbase' ><b>$Lang::tr{'trafficblue'}</b></td>";
-}
-
-if ($netsettings{'CONFIG_TYPE'} =~ /^(2|4)$/) {
-       print "<td width='$netWidth' align='center' class='boldbase' ><b>$Lang::tr{'trafficorange'}</b></td>";
-}
-
-if ($netsettings{'CONFIG_TYPE'} =~ /^(1|2|3|4)$/)
-{
-print "<td width='$netWidth' align='center' class='boldbase'><b>$Lang::tr{'trafficred'}</b></td>";
-}
-print <<END;
-       </tr>
-       </table>
-       <table width='100%'>
-       <tr>
-               <td width='$dateWidth' align='center' class='boldbase'><b>$Lang::tr{'trafficdate'}</b></td>
-               <td width='$inOutWidth' align='center' class='boldbase'><font color='$Header::colourgreen'><b>$Lang::tr{'trafficin'}</b></font></td>
-               <td width='$inOutWidth' align='center' class='boldbase'><font color='$Header::colourgreen'><b>$Lang::tr{'trafficout'}</b></font></td>
-END
-
-if ($netsettings{'CONFIG_TYPE'} =~ /^(3|4)$/)
-{
-       print "<td width='$inOutWidth' align='center' class='boldbase'><font color='${Header::colourblue}'><b>$Lang::tr{'trafficin'}</b></font></td>";
-       print "<td width='$inOutWidth' align='center' class='boldbase'><font color='${Header::colourblue}'><b>$Lang::tr{'trafficout'}</b></font></td>";
-}
-
-if ($netsettings{'CONFIG_TYPE'} =~ /^(2|4)$/)
-{
-       print "<td width='$inOutWidth' align='center' class='boldbase'><font color='$Header::colourorange'><b>$Lang::tr{'trafficin'}</b></font></td>";
-       print "<td width='$inOutWidth' align='center' class='boldbase'><font color='$Header::colourorange'><b>$Lang::tr{'trafficout'}</b></font></td>";
-}
-if ($netsettings{'CONFIG_TYPE'} =~ /^(1|2|3|4)$/)
-{
-print "<td width='$inOutWidth' align='center' class='boldbase'><font color='$Header::colourred'><b>$Lang::tr{'trafficin'}</b></font></td>";
-print "<td width='$inOutWidth' align='center' class='boldbase'><font color='$Header::colourred'><b>$Lang::tr{'trafficout'}</b></font></td>";
-}
-print "</tr>";
-
-my $total_blue_in=0;
-my $total_blue_out=0;
-my $total_green_in=0;
-my $total_green_out=0;
-my $total_orange_in=0;
-my $total_orange_out=0;
-my $total_red_in=0;
-my $total_red_out=0;
-my $lines=0;
-
-
-my $startyear = $cgiparams{'STARTYEAR'};
-my $stopyear = $cgiparams{'STOPYEAR'};
-
-my $startMonth = $cgiparams{'STARTMONTH'}+1;
-$startMonth = $startMonth < 10 ? $startMonth = "0".$startMonth : $startMonth;
-
-my $endMonth = $cgiparams{'STOPMONTH'}+1;
-$endMonth = $endMonth < 10 ? $endMonth = "0".$endMonth : $endMonth;
-
-my $startDay = $cgiparams{'STARTDAY'};
-$startDay = $startDay < 10 ? $startDay = "0".$startDay : $startDay;
-
-my $endDay = $cgiparams{'STOPDAY'}+1;
-$endDay = $endDay < 10 ? $endDay = "0".$endDay : $endDay;
-
-my $displayMode = "daily_multi";
-my $start = $startyear.$startMonth.$startDay;
-my $end = $stopyear.$endMonth.$endDay;
-
-my %allDaysBytes = ();
-my @allDays = &Traffic::calcTraffic(\%allDaysBytes,$start,$end, $displayMode);
-
-
-foreach (@allDays) {
-       $total_green_in += $allDaysBytes{$_}{${Traffic::green_in}};
-       $total_green_out += $allDaysBytes{$_}{${Traffic::green_out}};
-
-       if ($netsettings{'CONFIG_TYPE'} =~ /^(3|4)$/)
-       {
-               $total_blue_in += $allDaysBytes{$_}{${Traffic::blue_in}};
-               $total_blue_out += $allDaysBytes{$_}{${Traffic::blue_out}};
-       }
-
-       if ($netsettings{'CONFIG_TYPE'} =~ /^(2|4)$/)
-       {
-               $total_orange_in += $allDaysBytes{$_}{${Traffic::orange_in}};
-               $total_orange_out += $allDaysBytes{$_}{${Traffic::orange_out}};
-       }
-  
-  if ($netsettings{'CONFIG_TYPE'} =~ /^(1|2|3|4)$/)
-  {
-       $total_red_in += $allDaysBytes{$_}{${Traffic::red_in}};
-       $total_red_out += $allDaysBytes{$_}{${Traffic::red_out}};
-       }
-
-       if ($lines % 2) {
-               print "<tr bgcolor='$color{'color20'}'>"; }
-       else {
-               print "<tr bgcolor='$color{'color22'}'>"; }
-
-       printf "<td align='center' nowrap='nowrap'>%s</td>\n", $allDaysBytes{$_}{'Day'};
-       printf "<td align='center' nowrap='nowrap'>%.3f</td>\n", ($allDaysBytes{$_}{${Traffic::green_in}}/1048576);
-       printf "<td align='center' nowrap='nowrap'>%.3f</td>\n", ($allDaysBytes{$_}{${Traffic::green_out}}/1048576);
-
-       if ($netsettings{'CONFIG_TYPE'} =~ /^(3|4)$/)
-       {
-               printf "<td align='center' nowrap='nowrap'>%.3f</td>\n", ($allDaysBytes{$_}{${Traffic::blue_in}}/1048576);
-               printf "<td align='center' nowrap='nowrap'>%.3f</td>\n", ($allDaysBytes{$_}{${Traffic::blue_out}}/1048576);
-       }
-       if ($netsettings{'CONFIG_TYPE'} =~ /^(2|4)$/)
-       {
-               printf "<td align='center' nowrap='nowrap'>%.3f</td>\n", ($allDaysBytes{$_}{${Traffic::orange_in}}/1048576);
-               printf "<td align='center' nowrap='nowrap'>%.3f</td>\n", ($allDaysBytes{$_}{${Traffic::orange_out}}/1048576);
-       }
-  if ($netsettings{'CONFIG_TYPE'} =~ /^(1|2|3|4)$/)
-  {
-       printf "<td align='center' nowrap='nowrap'>%.3f</td>\n", ($allDaysBytes{$_}{${Traffic::red_in}}/1048576);
-       printf "<td align='center' nowrap='nowrap'>%.3f</td></tr>\n", ($allDaysBytes{$_}{${Traffic::red_out}}/1048576);
-  }
-       $lines++;
-}
-
-$total_green_in=sprintf("%.2f", ($total_green_in/1048576));
-$total_green_out=sprintf("%.2f", ($total_green_out/1048576));
-$total_blue_in=sprintf("%.2f", ($total_blue_in/1048576));
-$total_blue_out=sprintf("%.2f", ($total_blue_out/1048576));
-$total_orange_in=sprintf("%.2f", ($total_orange_in/1048576));
-$total_orange_out=sprintf("%.2f", ($total_orange_out/1048576));
-$total_red_in=sprintf("%.2f", ($total_red_in/1048576));
-$total_red_out=sprintf("%.2f", ($total_red_out/1048576));
-
-if ($lines % 2) {print "<tr bgcolor='$color{'color20'}'>"; }
-else {print "<tr bgcolor='$color{'color22'}'>"; }
-
-print <<END;
-       <td align='center' class='boldbase' height='20' nowrap='nowrap'><b>$Lang::tr{'trafficsum'}</b></td>
-       <td align='center' class='boldbase' nowrap='nowrap'><b>$total_green_in MB</b></td>
-       <td align='center' class='boldbase' nowrap='nowrap'><b>$total_green_out MB</b></td>
-END
-
-if ($netsettings{'CONFIG_TYPE'} =~ /^(3|4)$/)
-{
-       print "<td align='center' class='boldbase' nowrap='nowrap'><b>$total_blue_in MB</b></td>";
-       print "<td align='center' class='boldbase' nowrap='nowrap'><b>$total_blue_out MB</b></td>";
-}
-
-if ($netsettings{'CONFIG_TYPE'} =~ /^(2|4)$/)
-{
-       print "<td align='center' class='boldbase' nowrap='nowrap'><b>$total_orange_in MB</b></td>";
-       print "<td align='center' class='boldbase' nowrap='nowrap'><b>$total_orange_out MB</b></td>";
-}
-
-if ($netsettings{'CONFIG_TYPE'} =~ /^(1|2|3|4)$/)
-{
-print "<td align='center' class='boldbase' nowrap='nowrap'><b>$total_red_in MB</b></td>";
-print "<td align='center' class='boldbase' nowrap='nowrap'><b>$total_red_out MB</b></td>";
-}
-print "</tr></table>";
-
-&Header::closebox();
-&Header::closebigbox();
-&Header::closepage();
index 5ae2d8dc7a74b74e021934e595d7a5683b6fbf5e..af0964e10437b86f811ce11957a4262bbc53f199 100644 (file)
@@ -1443,12 +1443,6 @@ print <<END
        <td class='base'>$Lang::tr{'urlfilter msg text 3'}:&nbsp;<img src='/blob.gif' alt='*' /></td>
        <td><input type='text' name='MSG_TEXT_3' value='$filtersettings{'MSG_TEXT_3'}' size='40' /></td>
 </tr>
-<tr>
-       <td class='base'>$Lang::tr{'urlfilter enable jpeg'}:</td>
-       <td><input type='checkbox' name='ENABLE_JPEG' $checked{'ENABLE_JPEG'}{'on'} /></td>
-       <td>&nbsp;</td>
-       <td>&nbsp;</td>
-</tr>
 </table>
 <hr size='1'>
 <table width='100%'>
index 132137ea19569bd48b72397f7ed557f21ec058f3..9fe2ad0b3ca5970fb8929b9772937ae6827edbca 100644 (file)
 'gen static key' => 'Statischen Schlüssel erzeugen',
 'generate' => 'Root/Host Zertifikate generieren',
 'generate a certificate' => 'Erzeuge ein Zertifikat:',
+'generate iso' => 'ISO erstellen',
 'generate root/host certificates' => 'Erzeuge Root/Host Zertifikate',
 'generate tripwire keys and init' => 'Tripwire Initalisierung',
 'generatekeys' => 'Neue Schlüssel erzeugen',
 'idle timeout not set' => 'Leerlauf-Wartezeit nicht angegeben.',
 'ids log viewer' => 'Ansicht IDS-Log',
 'ids logs' => 'IDS-Logdateien',
+'ids preprocessor' => 'IDS Präprozessor',
 'ids rules license' => 'Um  Sourcefire VRT Zertifizierte Regeln zu nutzen, müssen Sie ich registrieren auf',
 'ids rules license2' => 'Bestätigen Sie die Lizenz, empfangen Sie Ihr Passwort per email und gehen Sie auf die Website. Gehen Sie zu',
 'ids rules license3' => 'klicken Sie den \'Get Code\' Knopf am Fuß und kopieren den 40-Zeichen Oink Code in das untere Feld.',
 'ids rules update' => 'Snort Regeln Update',
-'ids preprocessor' => 'Snort Präprozessor',
 'iface' => 'Iface',
 'ignore filter' => '&quot;Ignorieren&quot;-Filter',
 'ike encryption' => 'IKE Verschlüsselung:',
index 174e26aae1e890492288579e6262d32b616963bb..a9273a8926f182950d6f013a26b5494e05bf6727 100644 (file)
 'gen static key' => 'Generate a static Key',
 'generate' => 'Generate Root/Host Zertifikate',
 'generate a certificate' => 'Generate a certificate:',
+'generate iso' => 'Generate ISO',
 'generate root/host certificates' => 'Generate Root/Host Certificates',
 'generate tripwire keys and init' => 'generate tripwire keys and init',
 'generatekeys' => 'Generate Keys',
 'idle timeout not set' => 'Idle timeout not set.',
 'ids log viewer' => 'IDS log viewer',
 'ids logs' => 'IDS Logs',
+'ids preprocessor' => 'IDS preprocessor',
 'ids rules license' => 'To utilize Sourcefire VRT Certified Rules, you need to register on',
 'ids rules license2' => 'Acknowledge the license, receive your password by email, and connect to the site. Go to',
 'ids rules license3' => 'press the \'Get Code\' button at the bottom and copy the 40 character Oink Code into the field below.',
 'ids rules update' => 'Snort rules update',
-'ids preprocessor' => 'Snort preprocessor',
 'iface' => 'Iface',
 'ignore filter' => 'Ignore filter',
 'ike encryption' => 'IKE Encryption:',
 'unknown' => 'UNKNOWN',
 'unnamed' => 'Unnamed',
 'update' => 'Update',
-'update accelerator' => 'update booster',
+'update accelerator' => 'Update Booster',
 'update time' => 'Update the time:',
 'update transcript' => 'Update transcript',
 'updatedatabase' => 'Update Database with last Report',
 'upstream proxy host:port' => 'Upstream proxy (host:port)',
 'upstream username' => 'Upstream username:',
 'uptime and users' => 'Uptime and users:',
-'url filter' => 'content filter',
+'url filter' => 'Content Filter',
 'urlfilter access' => 'Access',
 'urlfilter activity detection' => 'Activity detection',
 'urlfilter add new time constraint rule' => 'Add new time constraint rule',
index 50d42e51939579638f582902fa4e192418792cbd..677783e88ae3758387d83f6803d75a26ca13a065 100644 (file)
--- a/lfs/alsa
+++ b/lfs/alsa
@@ -34,7 +34,7 @@ ifeq "$(KMOD)" "1"
 ifeq "$(SMP)" "1"
 TARGET     = $(DIR_INFO)/$(THISAPP)-kmod-smp
 else
-TARGET     = $(DIR_INFO)/$(THISAPP)-kmod
+TARGET     = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)
 endif
 else
 TARGET     = $(DIR_INFO)/$(THISAPP)
index eb3f9e903de708cdc605e00fa7b65799efce4039..8f440f2524e93c26d035bce6e54a03379d4a040f 100644 (file)
--- a/lfs/atl2
+++ b/lfs/atl2
@@ -33,7 +33,7 @@ DIR_APP    = $(DIR_SRC)/$(THISAPP)
 ifeq "$(SMP)" "1"
        TARGET     = $(DIR_INFO)/$(THISAPP)-smp
 else
-       TARGET     = $(DIR_INFO)/$(THISAPP)
+       TARGET     = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)
 endif
 
 
index 594024a349c612ab8c910d9ff09c0eeacd23e384..a12fb38edf86abeeb36479cfe7b99cd87cda03b5 100644 (file)
@@ -82,7 +82,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && sed -i "s/checkfor_matrox=yes/checkfor_matrox=no/g" configure
        cd $(DIR_APP) && sed -i "s/checkfor_cle266=no/checkfor_cle266=yes/g" configure
        cd $(DIR_APP) && ./configure --prefix=/usr --disable-x11 --enable-sdl \
-                                    --enable-video4linux2 --enable-multi 
+                                    --enable-video4linux2 
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
        ln -s $(THISAPP) /usr/src/directfb
index f09e62a12cf1927c09bd1cef0e273e5f70558a1a..962027d7cbce8b4ae0bf6267288a5bf509705df2 100644 (file)
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = hostapd
-PAK_VER    = 4
+PAK_VER    = 5
 
 DEPS       = ""
 
index b4d0e3bcfdb070b1777a77123cf413f81ca90ec9..114fab560c655ebf07bdd48881cf2445c93cd64e 100644 (file)
@@ -61,6 +61,7 @@ $(TARGET) :
        # make new dependencies 
        depmod -a -F /boot/System.map-$(KVER)-ipfire $(KVER)-ipfire
        #depmod -a -F /boot/System.map-$(KVER)-ipfire-smp $(KVER)-ipfire-smp
+       depmod -a -F /boot/System.map-2.6.25.17-ipfire 2.6.25.17-ipfire
        
        cp -a /lib/modules/$(KVER)-ipfire/ /install/initrd/lib/modules/
        
index 29949e4ebc251db149f0fafae1aafd503195d8ee..11d239919972550952ae341e8a2632ae175f1c5f 100644 (file)
--- a/lfs/kqemu
+++ b/lfs/kqemu
@@ -33,7 +33,7 @@ DIR_APP    = $(DIR_SRC)/$(THISAPP)
 ifeq "$(SMP)" "1"
        TARGET     = $(DIR_INFO)/$(THISAPP)-smp
 else
-       TARGET     = $(DIR_INFO)/$(THISAPP)
+       TARGET     = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)
 endif
 
 
diff --git a/lfs/linux-fusion b/lfs/linux-fusion
deleted file mode 100644 (file)
index 693412e..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
-#                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
-# it under the terms of the GNU General Public License as published by        #
-# the Free Software Foundation, either version 3 of the License, or           #
-# (at your option) any later version.                                         #
-#                                                                             #
-# This program is distributed in the hope that it will be useful,             #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
-# GNU General Public License for more details.                                #
-#                                                                             #
-# You should have received a copy of the GNU General Public License           #
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-
-###############################################################################
-# Definitions
-###############################################################################
-
-include Config
-
-VER        = 7.0.1
-
-THISAPP    = linux-fusion-$(VER)
-DL_FILE    = $(THISAPP).tar.gz
-DL_FROM    = $(URL_IPFIRE)
-DIR_APP    = $(DIR_SRC)/$(THISAPP)
-ifeq "$(SMP)" "1"
-       TARGET     = $(DIR_INFO)/$(THISAPP)-smp
-else
-       TARGET     = $(DIR_INFO)/$(THISAPP)
-endif
-
-###############################################################################
-# Top-level Rules
-###############################################################################
-
-objects = $(DL_FILE)
-
-$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-
-$(DL_FILE)_MD5 = 937028c98dbfd512f0c570c5ffe13769
-
-install : $(TARGET)
-
-check : $(patsubst %,$(DIR_CHK)/%,$(objects))
-
-download :$(patsubst %,$(DIR_DL)/%,$(objects))
-
-md5 : $(subst %,%_MD5,$(objects))
-
-dist: 
-       $(PAK)
-
-###############################################################################
-# Downloading, checking, md5sum
-###############################################################################
-
-$(patsubst %,$(DIR_CHK)/%,$(objects)) :
-       @$(CHECK)
-
-$(patsubst %,$(DIR_DL)/%,$(objects)) :
-       @$(LOAD)
-
-$(subst %,%_MD5,$(objects)) :
-       @$(MD5)
-
-###############################################################################
-# Installation Details
-###############################################################################
-
-$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
-       @$(PREBUILD)
-       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && sed -i "s@MODLIB)/drivers@MODLIB)/misc/drivers@g" Makefile
-ifeq "$(SMP)" "1"
-       cd $(DIR_APP) && sed -i "s/\x24(shell uname -r)/$(KVER)-ipfire-smp/g" Makefile
-       cd $(DIR_APP) && make
-       cd $(DIR_APP) && make install 
-else
-       cd $(DIR_APP) && sed -i "s/\x24(shell uname -r)/$(KVER)-ipfire/g" Makefile
-       cd $(DIR_APP) && make 
-       cd $(DIR_APP) && make install 
-endif
-       @rm -rf $(DIR_APP)
-       @$(POSTBUILD)
diff --git a/lfs/linux25 b/lfs/linux25
new file mode 100644 (file)
index 0000000..b50aafe
--- /dev/null
@@ -0,0 +1,179 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+PATCHLEVEL = .17
+VER        = 2.6.25.17
+
+THISAPP    = linux-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+CFLAGS     =
+CXXFLAGS   =
+
+# Normal build or SMP build.
+#
+ifeq "$(SMP)" "1"
+       TARGET = $(DIR_INFO)/linux-$(VER)-smp
+else
+       TARGET = $(DIR_INFO)/linux-$(VER)
+endif
+
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+objects =$(DL_FILE) \
+       mISDN-1_1_8.tar.gz \
+       squashfs3.4.tar.gz \
+       netfilter-layer7-v2.20.tar.gz \
+       patch-2.6.16-nath323-1.3.bz2 \
+       reiser4-for-2.6.25.patch.bz2
+       
+$(DL_FILE)                             = $(URL_IPFIRE)/$(DL_FILE)
+netfilter-layer7-v2.20.tar.gz          = $(URL_IPFIRE)/netfilter-layer7-v2.20.tar.gz
+patch-2.6.16-nath323-1.3.bz2           = $(URL_IPFIRE)/patch-2.6.16-nath323-1.3.bz2
+squashfs3.4.tar.gz                     = $(URL_IPFIRE)/squashfs3.4.tar.gz
+mISDN-1_1_8.tar.gz                     = $(URL_IPFIRE)/mISDN-1_1_8.tar.gz
+reiser4-for-2.6.25.patch.bz2           = $(URL_IPFIRE)/reiser4-for-2.6.25.patch.bz2
+
+$(DL_FILE)_MD5                         = 30618bff93fd4fd048e20a9a6aab8e5d
+netfilter-layer7-v2.20.tar.gz_MD5      = 525a821c973b730c8feaf9eedb57d1e4
+patch-2.6.16-nath323-1.3.bz2_MD5       = f926409ff703a307baf54b57ab75d138
+squashfs3.4.tar.gz_MD5                 = 2a4d2995ad5aa6840c95a95ffa6b1da6
+mISDN-1_1_8.tar.gz_MD5                 = 29c55ffe0b35668a41eaed3b1c3ddfe2
+reiser4-for-2.6.25.patch.bz2_MD5       = 4294bbcb39e5ee859b94b09ff4fb1e0c
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) $(DIR_SRC)/linux $(DIR_SRC)/xen-* && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+       ln -s linux-$(VER) /usr/src/linux
+
+       # Fix crash on Twinhead H12Y notebooks
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-h12y-mmio-quirks.patch
+
+       # Openswan
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openswan-2.4.x.kernel-2.6.23-natt.patch
+
+       # Reiser4
+       cd $(DIR_APP) && bzip2 -d -c $(DIR_DL)/reiser4-for-2.6.25.patch.bz2 | patch -Np1
+       
+       # SquashFS
+       cd $(DIR_SRC) && rm -rf squashfs*
+       cd $(DIR_SRC) && tar xfz $(DIR_DL)/squashfs3.4.tar.gz
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/squashfs3.4/kernel-patches/linux-2.6.25/squashfs3.4-patch
+
+       # ip_conntrack permissions from 440 to 444
+#      cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/ip_conntrack_standalone-patch-for-ipfire.patch
+
+       # ipp2p 0.8.2-pomng
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.25.17-ipp2p-0.8.2-pomng.patch
+
+       # Layer7-patch
+       cd $(DIR_SRC) && rm -rf $(DIR_SRC)/netfilter-layer7-v2.20
+       cd $(DIR_SRC) && tar xzf $(DIR_DL)/netfilter-layer7-v2.20.tar.gz
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/netfilter-layer7-v2.20/kernel-2.6.25-layer7-2.20.patch
+
+       # Linux Intermediate Queueing Device
+ifeq "$(XEN)" ""
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.25-imq5.diff
+endif
+
+       # mISDN
+       cd $(DIR_SRC) && rm -rf mISDN-*
+       cd $(DIR_SRC) && tar xfz $(DIR_DL)/mISDN-1_1_8.tar.gz
+       cd $(DIR_SRC)/mISDN-1_1_8 && yes 'yes' | ./std2kern -k /usr/src/linux
+       
+       cd $(DIR_APP)/drivers/isdn/hardware/mISDN && patch -Np0 < $(DIR_SRC)/src/patches/mISDN-avmfritz.patch
+
+       # Cleanup kernel source
+       cd $(DIR_APP) && make mrproper
+
+ifeq "$(SMP)" "1"
+       cp $(DIR_SRC)/config/kernel/kernel.config.$(MACHINE).smp $(DIR_APP)/.config
+else
+       cp $(DIR_SRC)/config/kernel/kernel25.config.$(MACHINE) $(DIR_APP)/.config
+endif
+
+       cd $(DIR_APP) && make CC="$(KGCC)" oldconfig
+       cd $(DIR_APP) && make CC="$(KGCC)" clean
+
+ifeq "$(SMP)" "1"
+       cd $(DIR_APP) && sed -i -e 's/EXTRAVERSION\ =.*/EXTRAVERSION\ =\ $(PATCHLEVEL)-ipfire-smp/' Makefile
+       cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" bzImage
+       cd $(DIR_APP) && cp -v arch/i386/boot/bzImage /boot/vmlinuz-$(VER)-ipfire-smp
+       cd $(DIR_APP) && cp -v System.map /boot/System.map-$(VER)-ipfire-smp
+       ln -sf vmlinuz-$(VER)-ipfire-smp /boot/vmlinuz-ipfire-smp
+       cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) modules
+       cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) modules_install
+else
+       cd $(DIR_APP) && sed -i -e 's/EXTRAVERSION\ =.*/EXTRAVERSION\ =\ $(PATCHLEVEL)-ipfire/' Makefile
+       cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" bzImage
+       cd $(DIR_APP) && cp -v arch/i386/boot/bzImage /boot/vmlinuz-$(VER)-ipfire
+       cd $(DIR_APP) && cp -v System.map /boot/System.map-$(VER)-ipfire
+       cd $(DIR_APP) && cp -v .config /boot/config-$(VER)-ipfire
+#      ln -sf vmlinuz-$(VER)-ipfire /boot/vmlinuz-ipfire
+#      ln -sf System.map-$(VER)-ipfire /boot/System.map-ipfire
+       cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) modules
+       cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) modules_install
+endif
+
+ifeq "$(SMP)" ""
+       # Only do this once on the non-SMP pass 
+       cd $(DIR_APP) && install -m 755 usr/gen_init_cpio /sbin/
+endif 
+
+       # Rename ide-cd module to match with old kernel
+       mv /lib/modules/$(VER)-ipfire/kernel/drivers/ide/ide-cd_mod.ko \
+           /lib/modules/$(VER)-ipfire/kernel/drivers/ide/ide-cd.ko
+
+       @rm -rf $(DIR_SRC)/patch-o-matic* $(DIR_SRC)/iptables* $(DIR_SRC)/squashfs* $(DIR_SRC)/mISDN-* $(DIR_SRC)/netfilter-layer7-*
+       @$(POSTBUILD)
index 9f2f9c4db4a33aed49d7720e1b6b72bd83862554..25cdffc806ea423869ad9f96781efc754d3c49b6 100644 (file)
@@ -31,7 +31,7 @@ DL_FILE    = $(THISAPP).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 ifeq "$(SMP)" ""
-  TARGET     = $(DIR_INFO)/$(THISAPP)
+  TARGET     = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)
 else
   TARGET     = $(DIR_INFO)/$(THISAPP)-smp
 endif
index 1b2192751534d40bd0f91a88175aa2ac7bfcff96..7a83be9a7de265a854a15ba3c46281369ca0871d 100644 (file)
@@ -35,7 +35,7 @@ PAK_VER    = 2
 ifeq "$(SMP)" "1"
        TARGET     = $(DIR_INFO)/$(THISAPP)-smp
 else
-       TARGET     = $(DIR_INFO)/$(THISAPP)
+       TARGET     = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)
 endif
 
 
diff --git a/make.sh b/make.sh
index 7f62482ece9cd6dca143fe5436e6b8354d556988..3307e9e59f38d2fa18ab379dd8ceb16fe1304dfc 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -177,7 +177,7 @@ prepareenv() {
     # Setup environment
     set +h
     LC_ALL=POSIX
-    MAKETUNING="-j6"
+    MAKETUNING="-j8"
     export LFS LC_ALL CFLAGS CXXFLAGS MAKETUNING
     unset CC CXX CPP LD_LIBRARY_PATH LD_PRELOAD
 
@@ -343,8 +343,13 @@ buildipfire() {
 #  ipfiremake alsa             KMOD=1  SMP=1
 #  ipfiremake sane             KMOD=1  SMP=1
 #  ipfiremake openswan         KMOD=1  SMP=1
+  ipfiremake linux25
+  ipfiremake atl2                      KVER=2.6.25.17
+  ipfiremake kqemu                     KVER=2.6.25.17
+  ipfiremake v4l-dvb                   KVER=2.6.25.17
+  ipfiremake madwifi                   KVER=2.6.25.17
+  ipfiremake alsa              KMOD=1  KVER=2.6.25.17
   ipfiremake linux
-  ipfiremake linux-fusion
   ipfiremake atl2
   ipfiremake r8168
   ipfiremake r8169
index ed34389d3e588284cecea2bccc43c2dec038dc95..f0f559ddb80c104cadbbc5b55a1196f2972e5fe6 100644 (file)
@@ -5,25 +5,39 @@
 . /etc/sysconfig/rc
 . $rc_functions
 
+eval $(/usr/local/bin/readhash /var/ipfire/main/settings)
+
+if [ "$RRDLOG" = '' ]; then
+       RRDLOG=/var/log/rrd
+fi
+
 case "$1" in
        start)
                if [ ! -e /etc/sysconfig/lm_sensors ]; then
-                   boot_mesg "Searching for Sensors..."
-                   "yes" | /usr/sbin/sensors-detect > /dev/null
-                   evaluate_retval
-                   if [ ! -e /etc/sysconfig/lm_sensors ]; then
-                       echo "#No Sensors detected " > /etc/sysconfig/lm_sensors
-                   fi
+                       boot_mesg "Searching for Sensors..."
+                       "yes" | /usr/sbin/sensors-detect > /dev/null
+                       evaluate_retval
+
+                       if [ ! -e /etc/sysconfig/lm_sensors ]; then
+                               echo "#No Sensors detected " > /etc/sysconfig/lm_sensors
+                               sed -i -e "s|LoadPlugin sensors|#LoadPlugin sensors|g" /etc/collectd.conf
+                       fi
+               fi
+
+               if [ ! -e $RRDLOG.bak/ ]; then
+                       mkdir $RRDLOG.bak/
                fi
 
+               /etc/init.d/collectd restore
+
                boot_mesg -n "Loading Sensor Modules..."
                for modul in `cat /etc/sysconfig/lm_sensors | grep '^MODULE_' | cut -d"=" -s -f2`; do
-                   modprobe $modul > /dev/null 2>&1;
-                   if [ ${?} = 0 ]; then
-                       boot_mesg -n "$SUCCESS$modul$NORMAL ";
-                   else
-                       boot_mesg -n "$FAILURE$modul$NORMAL ";
-                   fi
+               modprobe $modul > /dev/null 2>&1;
+                       if [ ${?} = 0 ]; then
+                               boot_mesg -n "$SUCCESS$modul$NORMAL ";
+                       else
+                               boot_mesg -n "$FAILURE$modul$NORMAL ";
+                       fi
                done
                boot_mesg;
                echo_ok;
@@ -31,50 +45,29 @@ case "$1" in
                boot_mesg "Starting Collection daemon..."
                /usr/sbin/collectd -C /etc/collectd.conf
                evaluate_retval
-#
-# These lines are for furhter implementation of the collectd, atm the temps are
-# collected by the makegraphs script because of the standby functions
-#
-#              for disk in `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`; do boot_mesg "Bringing up hddtemp daemon for $disk ..."; /usr/sbin/hddtemp $disk -d -l localhost; evaluate_retval; done
-#
-# Starting the mbmon in deamon mode to enable sensors reading for collectd
-# later mbmon will be replaced by lmsensors, if mbmon is not running on your
-# system, we advise to comment out these lines in order to prevent fail
-#
-#              boot_mesg "Bringing up mbmon daemon..."
-#              /usr/bin/mbmon -P 411 -r
-#              evaluate_retval
                ;;
-
        stop)
-# if mbmon is not running on your system, we advise to comment out these lines
-# in order to prevent fail
-#              boot_mesg "Stopping mbmon daemon..."
-#              killproc /usr/bin/mbmon
-#              evaluate_retval
-#              boot_mesg "Stopping hddtemp daemon..."
-#              killproc /usr/sbin/hddtemp
-#              evaluate_retval
+               /etc/init.d/collectd backup
                boot_mesg "Stopping Collection daemon..."
                killproc /usr/sbin/collectd
                evaluate_retval
                ;;
-
        restart)
-
-#
-# We need to do this that way because mbmon doesn`t clear the port when killed
-# so the next startup it fails with port allready in use -> don´t restart mbmon
-#
-               boot_mesg "Stopping Collection daemon..."
-               killproc /usr/sbin/collectd
-               evaluate_retval
+               ${0} stop
                sleep 1
-               boot_mesg "Starting Collection daemon..."
-               /usr/sbin/collectd -C /etc/collectd.conf
+               ${0} start
+               ;;
+       backup)
+               boot_mesg "Save rrd files from ramd..."
+               cp -pR $RRDLOG/* $RRDLOG.bak/
                evaluate_retval
-                               ;;
-
+               ;;
+       restore)
+               if [ -e $RRDLOG.bak ];then
+                       boot_mesg "Copying rrd files to ramd..."
+                       cp -pR $RRDLOG.bak/* $RRDLOG/
+               fi
+               ;;
        status)
                statusproc /usr/sbin/collectd
                ;;
index 0fe97a1fdc60813cfa6d0ecda8c502bc0b6ed9fb..d4f31b38b562e33a83384ca18ffae684be421228 100644 (file)
@@ -66,6 +66,7 @@ int main(int argc, char *argv[])
        int unattended = 0;
        struct keyvalue *unattendedkv = initkeyvalues();
        int hardyn = 0;
+       char restore_file[STRING_SIZE] = "";
 
        setlocale (LC_ALL, "");
        sethostname( SNAME , 10);
@@ -208,6 +209,7 @@ int main(int argc, char *argv[])
            fprintf(flog, "unattended: Reading unattended.conf\n");
 
            (void) readkeyvalues(unattendedkv, UNATTENDED_CONF);
+           findkey(unattendedkv, "RESTORE_FILE", restore_file);            
        }
        
        /* Make the hdparms struct and print the contents.
@@ -453,6 +455,11 @@ int main(int argc, char *argv[])
                KERNEL_VERSION);
        mysystem(commandstring);
 */
+       snprintf(commandstring, STRING_SIZE, 
+               "/bin/touch /harddisk/lib/modules/2.6.25.17-ipfire/modules.dep");
+       mysystem(commandstring);
+
+
        /* Rename uname */
        rename ("/harddisk/bin/uname.bak", "/harddisk/bin/uname");
 
@@ -525,6 +532,11 @@ int main(int argc, char *argv[])
 /*     snprintf(commandstring, STRING_SIZE, "/sbin/chroot /harddisk /sbin/mkinitcpio -g /boot/ipfirerd-%s-smp.img -k %s-ipfire-smp", KERNEL_VERSION, KERNEL_VERSION );
        runcommandwithstatus(commandstring, ctr[TR_BUILDING_INITRD]);
 */
+       snprintf(commandstring, STRING_SIZE, "/sbin/chroot /harddisk /sbin/mkinitcpio -g /boot/ipfirerd-2.6.25.17.img -k 2.6.25.17-ipfire");
+       runcommandwithstatus(commandstring, ctr[TR_BUILDING_INITRD]);
+
+
+
        sprintf(string, "root=%s3", hdparams.devnode_part_run);
        replace( "/harddisk/boot/grub/grub.conf", "root=ROOT", string);
        mysystem("ln -s grub.conf /harddisk/boot/grub/menu.lst");
@@ -538,6 +550,13 @@ int main(int argc, char *argv[])
                goto EXIT;
        }
        
+       /* Copy restore file from cdrom */
+       if (unattended && (strlen(restore_file) > 0)) {
+               fprintf(flog, "unattended: Copy restore file\n");
+           snprintf(commandstring, STRING_SIZE, 
+                       "cp /cdrom/%s /harddisk/var/ipfire/backup", restore_file);
+       }
+       
        mysystem("umount /cdrom");
        snprintf(commandstring, STRING_SIZE, "eject /dev/%s", sourcedrive);
        mysystem(commandstring);
index b771b6fd908a7eb35dea4ffcc5f0fa50e3eea208..754946aa22fee778205620b7e80de94fe6b01ccb 100644 (file)
@@ -41,7 +41,7 @@ int unattended_setup(struct keyvalue *unattendedkv) {
     char green_broadcast[STRING_SIZE];
     char root_password[STRING_SIZE];
     char admin_password[STRING_SIZE];
-    char restore_file[STRING_SIZE];
+    char restore_file[STRING_SIZE] = "";
 
     findkey(unattendedkv, "DOMAINNAME", domainname);
     findkey(unattendedkv, "HOSTNAME", hostname);
@@ -147,13 +147,13 @@ int unattended_setup(struct keyvalue *unattendedkv) {
     }
 
        /* restore backup */
-       if (restore_file != "") {
+       if (strlen(restore_file) > 0) {
                fprintf(flog, "unattended: Restoring Backup\n");
            snprintf(commandstring, STRING_SIZE,
-                   "cd /harddisk && /bin/tar -xvz --preserve -f /cdrom/%s", restore_file);
+                   "cd /harddisk && /bin/tar -xvz --preserve -f /harddisk/var/ipfire/%s", restore_file);
            if (mysystem(commandstring)) {
-               errorbox("unattended: ERROR setting admin password");
-               return 0;
+               errorbox("unattended: ERROR restoring backup");
+           }
        }
 
     fprintf(flog, "unattended: Setup ended\n");
diff --git a/src/patches/linux-2.6.25.17-ipp2p-0.8.2-pomng.patch b/src/patches/linux-2.6.25.17-ipp2p-0.8.2-pomng.patch
new file mode 100644 (file)
index 0000000..0410086
--- /dev/null
@@ -0,0 +1,980 @@
+diff -Naur linux-2.6.25.17.org/include/linux/netfilter_ipv4/ipt_ipp2p.h linux-2.6.25.17/include/linux/netfilter_ipv4/ipt_ipp2p.h
+--- linux-2.6.25.17.org/include/linux/netfilter_ipv4/ipt_ipp2p.h       1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.25.17/include/linux/netfilter_ipv4/ipt_ipp2p.h   2008-09-29 15:19:39.000000000 +0000
+@@ -0,0 +1,31 @@
++#ifndef __IPT_IPP2P_H
++#define __IPT_IPP2P_H
++#define IPP2P_VERSION "0.8.2-pomng"
++
++struct ipt_p2p_info {
++    int cmd;
++    int debug;
++};
++
++#endif //__IPT_IPP2P_H
++
++#define SHORT_HAND_IPP2P      1 /* --ipp2p switch*/
++//#define SHORT_HAND_DATA             4 /* --ipp2p-data switch*/
++#define SHORT_HAND_NONE               5 /* no short hand*/
++
++#define IPP2P_EDK             (1 << 1)
++#define IPP2P_DATA_KAZAA      (1 << 2)
++#define IPP2P_DATA_EDK                (1 << 3)
++#define IPP2P_DATA_DC         (1 << 4)
++#define IPP2P_DC              (1 << 5)
++#define IPP2P_DATA_GNU                (1 << 6)
++#define IPP2P_GNU             (1 << 7)
++#define IPP2P_KAZAA           (1 << 8)
++#define IPP2P_BIT             (1 << 9)
++#define IPP2P_APPLE           (1 << 10)
++#define IPP2P_SOUL            (1 << 11)
++#define IPP2P_WINMX           (1 << 12)
++#define IPP2P_ARES            (1 << 13)
++#define IPP2P_MUTE            (1 << 14)
++#define IPP2P_WASTE           (1 << 15)
++#define IPP2P_XDCC            (1 << 16)
+diff -Naur linux-2.6.25.17.org/net/ipv4/netfilter/Kconfig linux-2.6.25.17/net/ipv4/netfilter/Kconfig
+--- linux-2.6.25.17.org/net/ipv4/netfilter/Kconfig     2008-09-08 10:20:51.000000000 +0000
++++ linux-2.6.25.17/net/ipv4/netfilter/Kconfig 2008-09-29 15:19:39.000000000 +0000
+@@ -379,5 +379,15 @@
+         Allows altering the ARP packet payload: source and destination
+         hardware and network addresses.
++config IP_NF_MATCH_IPP2P
++      tristate  'IPP2P match support'
++      depends on IP_NF_IPTABLES
++      help
++        This option makes possible to match some P2P packets
++        therefore helps controlling such traffic.
++      
++        If you want to compile it as a module, say M here and read
++        <file:Documentation/modules.txt>.  If unsure, say `N'.
++
+ endmenu
+diff -Naur linux-2.6.25.17.org/net/ipv4/netfilter/Makefile linux-2.6.25.17/net/ipv4/netfilter/Makefile
+--- linux-2.6.25.17.org/net/ipv4/netfilter/Makefile    2008-09-08 10:20:51.000000000 +0000
++++ linux-2.6.25.17/net/ipv4/netfilter/Makefile        2008-09-29 15:19:39.000000000 +0000
+@@ -45,6 +45,7 @@
+ obj-$(CONFIG_IP_NF_MATCH_AH) += ipt_ah.o
+ obj-$(CONFIG_IP_NF_MATCH_ECN) += ipt_ecn.o
+ obj-$(CONFIG_IP_NF_MATCH_RECENT) += ipt_recent.o
++obj-$(CONFIG_IP_NF_MATCH_IPP2P) += ipt_ipp2p.o
+ obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
+ # targets
+diff -Naur linux-2.6.25.17.org/net/ipv4/netfilter/ipt_ipp2p.c linux-2.6.25.17/net/ipv4/netfilter/ipt_ipp2p.c
+--- linux-2.6.25.17.org/net/ipv4/netfilter/ipt_ipp2p.c 1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.25.17/net/ipv4/netfilter/ipt_ipp2p.c     2008-09-29 15:19:39.000000000 +0000
+@@ -0,0 +1,911 @@
++#if defined(MODVERSIONS)
++#include <linux/modversions.h>
++#endif
++#include <linux/module.h>
++#include <linux/version.h>
++#include <linux/netfilter_ipv4/ip_tables.h>
++#include <linux/netfilter_ipv4/ipt_ipp2p.h>
++#include <net/tcp.h>
++#include <net/udp.h>
++
++#define get_u8(X,O)  (*(__u8 *)(X + O))
++#define get_u16(X,O)  (*(__u16 *)(X + O))
++#define get_u32(X,O)  (*(__u32 *)(X + O))
++
++MODULE_AUTHOR("Eicke Friedrich/Klaus Degner <ipp2p@ipp2p.org>");
++MODULE_DESCRIPTION("An extension to iptables to identify P2P traffic.");
++MODULE_LICENSE("GPL");
++
++
++/*Search for UDP eDonkey/eMule/Kad commands*/
++int
++udp_search_edk (unsigned char *haystack, int packet_len)
++{
++    unsigned char *t = haystack;
++    t += 8;
++
++      switch (t[0]) {
++              case 0xe3: 
++              {       /*edonkey*/
++                      switch (t[1]) 
++                      {
++                              /* client -> server status request */
++                              case 0x96: 
++                                      if (packet_len == 14) return ((IPP2P_EDK * 100) + 50);
++                                      break;
++                              /* server -> client status request */
++                              case 0x97: if (packet_len == 42) return ((IPP2P_EDK * 100) + 51);
++                                      break;
++                                              /* server description request */
++                                              /* e3 2a ff f0 .. | size == 6 */
++                              case 0xa2: if ( (packet_len == 14) && ( get_u16(t,2) == __constant_htons(0xfff0) ) ) return ((IPP2P_EDK * 100) + 52);
++                                      break;
++                                              /* server description response */
++                                              /* e3 a3 ff f0 ..  | size > 40 && size < 200 */
++                              //case 0xa3: return ((IPP2P_EDK * 100) + 53);
++                              //      break;
++                              case 0x9a: if (packet_len==26) return ((IPP2P_EDK * 100) + 54);
++                                      break;
++
++                              case 0x92: if (packet_len==18) return ((IPP2P_EDK * 100) + 55);
++                                      break;
++                      }
++                      break;
++              }
++              case 0xe4: 
++              {
++                      switch (t[1]) 
++                      {
++                                              /* e4 20 .. | size == 43 */
++                              case 0x20: if ((packet_len == 43) && (t[2] != 0x00) && (t[34] != 0x00)) return ((IPP2P_EDK * 100) + 60);
++                                      break;
++                                              /* e4 00 .. 00 | size == 35 ? */
++                              case 0x00: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 61);
++                                      break;
++                                              /* e4 10 .. 00 | size == 35 ? */
++                              case 0x10: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 62);
++                                      break;
++                                              /* e4 18 .. 00 | size == 35 ? */
++                              case 0x18: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 63);
++                                      break;
++                                              /* e4 52 .. | size = 44 */
++                              case 0x52: if (packet_len == 44 ) return ((IPP2P_EDK * 100) + 64);
++                                      break;
++                                              /* e4 58 .. | size == 6 */
++                              case 0x58: if (packet_len == 14 ) return ((IPP2P_EDK * 100) + 65);
++                                      break;
++                                              /* e4 59 .. | size == 2 */
++                              case 0x59: if (packet_len == 10 )return ((IPP2P_EDK * 100) + 66);
++                                      break;
++                                      /* e4 28 .. | packet_len == 52,77,102,127... */
++                              case 0x28: if (((packet_len-52) % 25) == 0) return ((IPP2P_EDK * 100) + 67);
++                                      break;
++                                      /* e4 50 xx xx | size == 4 */
++                              case 0x50: if (packet_len == 12) return ((IPP2P_EDK * 100) + 68);
++                                      break;
++                                      /* e4 40 xx xx | size == 48 */
++                              case 0x40: if (packet_len == 56) return ((IPP2P_EDK * 100) + 69);
++                                      break;
++                      }
++                      break;
++              }
++      } /* end of switch (t[0]) */
++    return 0;
++}/*udp_search_edk*/
++
++
++/*Search for UDP Gnutella commands*/
++int
++udp_search_gnu (unsigned char *haystack, int packet_len)
++{
++    unsigned char *t = haystack;
++    t += 8;
++    
++    if (memcmp(t, "GND", 3) == 0) return ((IPP2P_GNU * 100) + 51);
++    if (memcmp(t, "GNUTELLA ", 9) == 0) return ((IPP2P_GNU * 100) + 52);
++    return 0;
++}/*udp_search_gnu*/
++
++
++/*Search for UDP KaZaA commands*/
++int
++udp_search_kazaa (unsigned char *haystack, int packet_len)
++{
++    unsigned char *t = haystack;
++    
++    if (t[packet_len-1] == 0x00){
++      t += (packet_len - 6);
++      if (memcmp(t, "KaZaA", 5) == 0) return (IPP2P_KAZAA * 100 +50);
++    }
++    
++    return 0;
++}/*udp_search_kazaa*/
++
++/*Search for UDP DirectConnect commands*/
++int
++udp_search_directconnect (unsigned char *haystack, int packet_len)
++{
++    unsigned char *t = haystack;
++    if ((*(t + 8) == 0x24) && (*(t + packet_len - 1) == 0x7c)) {
++      t+=8;
++      if (memcmp(t, "SR ", 3) == 0)                   return ((IPP2P_DC * 100) + 60);
++      if (memcmp(t, "Ping ", 5) == 0)                 return ((IPP2P_DC * 100) + 61);
++    }
++    return 0;
++}/*udp_search_directconnect*/
++
++
++
++/*Search for UDP BitTorrent commands*/
++int
++udp_search_bit (unsigned char *haystack, int packet_len)
++{
++      switch(packet_len)
++      {
++              case 24:
++                      /* ^ 00 00 04 17 27 10 19 80 */
++                      if ((ntohl(get_u32(haystack, 8)) == 0x00000417) && (ntohl(get_u32(haystack, 12)) == 0x27101980)) 
++                              return (IPP2P_BIT * 100 + 50);
++                      break;
++              case 44:
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000400) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) 
++                              return (IPP2P_BIT * 100 + 51);
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000400))
++                              return (IPP2P_BIT * 100 + 61);
++                      break;
++              case 65:
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000404) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) 
++                              return (IPP2P_BIT * 100 + 52);
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000404))
++                              return (IPP2P_BIT * 100 + 62);
++                      break;
++              case 67:
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000406) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) 
++                              return (IPP2P_BIT * 100 + 53);
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000406))
++                              return (IPP2P_BIT * 100 + 63);
++                      break;
++              case 211:
++                      if (get_u32(haystack, 8) == __constant_htonl(0x00000405)) 
++                              return (IPP2P_BIT * 100 + 54);
++                      break;
++              case 29:
++                      if ((get_u32(haystack, 8) == __constant_htonl(0x00000401))) 
++                              return (IPP2P_BIT * 100 + 55);
++                      break;
++              case 52:
++                      if (get_u32(haystack,8)  == __constant_htonl(0x00000827) &&
++                      get_u32(haystack,12) == __constant_htonl(0x37502950))
++                              return (IPP2P_BIT * 100 + 80);
++                      break;
++              default:
++                      /* this packet does not have a constant size */
++                      if (packet_len >= 40 && get_u32(haystack, 16) == __constant_htonl(0x00000402) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) 
++                              return (IPP2P_BIT * 100 + 56);
++                      break;
++      }
++    
++      /* some extra-bitcomet rules:
++      * "d1:" [a|r] "d2:id20:"
++      */
++      if (packet_len > 30 && get_u8(haystack, 8) == 'd' && get_u8(haystack, 9) == '1' && get_u8(haystack, 10) == ':' )
++      {
++              if (get_u8(haystack, 11) == 'a' || get_u8(haystack, 11) == 'r')
++              {
++                      if (memcmp(haystack+12,"d2:id20:",8)==0)
++                              return (IPP2P_BIT * 100 + 57);
++              }
++      }
++    
++#if 0
++      /* bitlord rules */
++      /* packetlen must be bigger than 40 */
++      /* first 4 bytes are zero */
++      if (packet_len > 40 && get_u32(haystack, 8) == 0x00000000)
++      {
++              /* first rule: 00 00 00 00 01 00 00 xx xx xx xx 00 00 00 00*/
++              if (get_u32(haystack, 12) == 0x00000000 && 
++                  get_u32(haystack, 16) == 0x00010000 &&
++                  get_u32(haystack, 24) == 0x00000000 )
++                      return (IPP2P_BIT * 100 + 71);
++                      
++              /* 00 01 00 00 0d 00 00 xx xx xx xx 00 00 00 00*/
++              if (get_u32(haystack, 12) == 0x00000001 && 
++                  get_u32(haystack, 16) == 0x000d0000 &&
++                  get_u32(haystack, 24) == 0x00000000 )
++                      return (IPP2P_BIT * 100 + 71);
++              
++                  
++      }
++#endif
++
++    return 0;
++}/*udp_search_bit*/
++
++
++
++/*Search for Ares commands*/
++//#define IPP2P_DEBUG_ARES
++int
++search_ares (const unsigned char *payload, const u16 plen)
++//int search_ares (unsigned char *haystack, int packet_len, int head_len)
++{
++//    const unsigned char *t = haystack + head_len;
++      
++      /* all ares packets start with  */
++      if (payload[1] == 0 && (plen - payload[0]) == 3)
++      {
++              switch (payload[2])
++              {
++                      case 0x5a:
++                              /* ares connect */
++                              if ( plen == 6 && payload[5] == 0x05 ) return ((IPP2P_ARES * 100) + 1);
++                              break;
++                      case 0x09:
++                              /* ares search, min 3 chars --> 14 bytes
++                               * lets define a search can be up to 30 chars --> max 34 bytes
++                               */
++                              if ( plen >= 14 && plen <= 34 ) return ((IPP2P_ARES * 100) + 1);
++                              break;
++#ifdef IPP2P_DEBUG_ARES
++                      default:
++                      printk(KERN_DEBUG "Unknown Ares command %x recognized, len: %u \n", (unsigned int) payload[2],plen);
++#endif /* IPP2P_DEBUG_ARES */
++              }
++      }
++
++#if 0         
++      /* found connect packet: 03 00 5a 04 03 05 */
++      /* new version ares 1.8: 03 00 5a xx xx 05 */
++    if ((plen) == 6){ /* possible connect command*/
++      if ((payload[0] == 0x03) && (payload[1] == 0x00) && (payload[2] == 0x5a) && (payload[5] == 0x05))
++          return ((IPP2P_ARES * 100) + 1);
++    }
++    if ((plen) == 60){        /* possible download command*/
++      if ((payload[59] == 0x0a) && (payload[58] == 0x0a)){
++          if (memcmp(t, "PUSH SHA1:", 10) == 0) /* found download command */
++              return ((IPP2P_ARES * 100) + 2);
++      }
++    }
++#endif
++
++    return 0;
++} /*search_ares*/
++
++/*Search for SoulSeek commands*/
++int
++search_soul (const unsigned char *payload, const u16 plen)
++{
++//#define IPP2P_DEBUG_SOUL
++    /* match: xx xx xx xx | xx = sizeof(payload) - 4 */
++    if (get_u32(payload, 0) == (plen - 4)){
++      const __u32 m=get_u32(payload, 4);
++      /* match 00 yy yy 00, yy can be everything */
++        if ( get_u8(payload, 4) == 0x00 && get_u8(payload, 7) == 0x00 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++      printk(KERN_DEBUG "0: Soulseek command 0x%x recognized\n",get_u32(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 1);
++      }
++      
++        /* next match: 01 yy 00 00 | yy can be everything */
++        if ( get_u8(payload, 4) == 0x01 && get_u16(payload, 6) == 0x0000 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++      printk(KERN_DEBUG "1: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 2);
++      }
++      
++      /* other soulseek commandos are: 1-5,7,9,13-18,22,23,26,28,35-37,40-46,50,51,60,62-69,91,92,1001 */
++      /* try to do this in an intelligent way */
++      /* get all small commandos */
++      switch(m)
++      {
++              case 7:
++              case 9:
++              case 22:
++              case 23:
++              case 26:
++              case 28:
++              case 50:
++              case 51:
++              case 60:
++              case 91:
++              case 92:
++              case 1001:
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "2: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 3);
++      }
++      
++      if (m > 0 && m < 6 ) 
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "3: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 4);
++      }
++      if (m > 12 && m < 19 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "4: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 5);
++      }
++
++      if (m > 34 && m < 38 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "5: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 6);
++      }
++
++      if (m > 39 && m < 47 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "6: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 7);
++      }
++
++      if (m > 61 && m < 70 ) 
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "7: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 8);
++      }
++
++#ifdef IPP2P_DEBUG_SOUL
++      printk(KERN_DEBUG "unknown SOULSEEK command: 0x%x, first 16 bit: 0x%x, first 8 bit: 0x%x ,soulseek ???\n",get_u32(payload, 4),get_u16(payload, 4) >> 16,get_u8(payload, 4) >> 24);
++#endif /* IPP2P_DEBUG_SOUL */
++    }
++      
++      /* match 14 00 00 00 01 yy 00 00 00 STRING(YY) 01 00 00 00 00 46|50 00 00 00 00 */
++      /* without size at the beginning !!! */
++      if ( get_u32(payload, 0) == 0x14 && get_u8(payload, 4) == 0x01 )
++      {
++              __u32 y=get_u32(payload, 5);
++              /* we need 19 chars + string */
++              if ( (y + 19) <= (plen) )
++              {
++                      const unsigned char *w=payload+9+y;
++                      if (get_u32(w, 0) == 0x01 && ( get_u16(w, 4) == 0x4600 || get_u16(w, 4) == 0x5000) && get_u32(w, 6) == 0x00);
++#ifdef IPP2P_DEBUG_SOUL
++                      printk(KERN_DEBUG "Soulssek special client command recognized\n");
++#endif /* IPP2P_DEBUG_SOUL */
++                      return ((IPP2P_SOUL * 100) + 9);
++              }
++      }
++    return 0;
++}
++
++
++/*Search for WinMX commands*/
++int
++search_winmx (const unsigned char *payload, const u16 plen)
++{
++//#define IPP2P_DEBUG_WINMX
++    if (((plen) == 4) && (memcmp(payload, "SEND", 4) == 0))  return ((IPP2P_WINMX * 100) + 1);
++    if (((plen) == 3) && (memcmp(payload, "GET", 3) == 0))  return ((IPP2P_WINMX * 100) + 2);
++    //if (packet_len < (head_len + 10)) return 0;
++    if (plen < 10) return 0;
++    
++    if ((memcmp(payload, "SEND", 4) == 0) || (memcmp(payload, "GET", 3) == 0)){
++        u16 c=4;
++        const u16 end=plen-2;
++        u8 count=0;
++        while (c < end)
++        {
++              if (payload[c]== 0x20 && payload[c+1] == 0x22)
++              {
++                      c++;
++                      count++;
++                      if (count>=2) return ((IPP2P_WINMX * 100) + 3);
++              }
++              c++;
++        }
++    }
++    
++    if ( plen == 149 && payload[0] == '8' )
++    {
++#ifdef IPP2P_DEBUG_WINMX
++      printk(KERN_INFO "maybe WinMX\n");
++#endif
++      if (get_u32(payload,17) == 0 && get_u32(payload,21) == 0 && get_u32(payload,25) == 0 &&
++//                get_u32(payload,33) == __constant_htonl(0x71182b1a) && get_u32(payload,37) == __constant_htonl(0x05050000) &&
++//                get_u32(payload,133) == __constant_htonl(0x31097edf) && get_u32(payload,145) == __constant_htonl(0xdcb8f792))
++          get_u16(payload,39) == 0 && get_u16(payload,135) == __constant_htons(0x7edf) && get_u16(payload,147) == __constant_htons(0xf792))
++          
++      {
++#ifdef IPP2P_DEBUG_WINMX
++              printk(KERN_INFO "got WinMX\n");
++#endif
++              return ((IPP2P_WINMX * 100) + 4);
++      }
++    }
++    return 0;
++} /*search_winmx*/
++
++
++/*Search for appleJuice commands*/
++int
++search_apple (const unsigned char *payload, const u16 plen)
++{
++    if ( (plen > 7) && (payload[6] == 0x0d) && (payload[7] == 0x0a) && (memcmp(payload, "ajprot", 6) == 0))  return (IPP2P_APPLE * 100);
++    
++    return 0;
++}
++
++
++/*Search for BitTorrent commands*/
++int
++search_bittorrent (const unsigned char *payload, const u16 plen)
++{
++    if (plen > 20)
++    {
++      /* test for match 0x13+"BitTorrent protocol" */
++      if (payload[0] == 0x13) 
++      {
++              if (memcmp(payload+1, "BitTorrent protocol", 19) == 0) return (IPP2P_BIT * 100);
++      }
++      
++      /* get tracker commandos, all starts with GET /
++      * then it can follow: scrape| announce
++      * and then ?hash_info=
++      */
++      if (memcmp(payload,"GET /",5) == 0)
++      {
++              /* message scrape */
++              if ( memcmp(payload+5,"scrape?info_hash=",17)==0 ) return (IPP2P_BIT * 100 + 1);
++              /* message announce */
++              if ( memcmp(payload+5,"announce?info_hash=",19)==0 ) return (IPP2P_BIT * 100 + 2);
++      }
++    } 
++    else 
++    {
++      /* bitcomet encryptes the first packet, so we have to detect another 
++       * one later in the flow */
++       /* first try failed, too many missdetections */
++      //if ( size == 5 && get_u32(t,0) == __constant_htonl(1) && t[4] < 3) return (IPP2P_BIT * 100 + 3);
++      
++      /* second try: block request packets */
++      if ( plen == 17 && get_u32(payload,0) == __constant_htonl(0x0d) && payload[4] == 0x06 && get_u32(payload,13) == __constant_htonl(0x4000) ) return (IPP2P_BIT * 100 + 3);
++    }
++
++    return 0;
++}
++
++
++
++/*check for Kazaa get command*/
++int
++search_kazaa (const unsigned char *payload, const u16 plen)
++
++{
++    if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a) && memcmp(payload, "GET /.hash=", 11) == 0)
++      return (IPP2P_DATA_KAZAA * 100);
++
++    return 0;
++}
++
++
++/*check for gnutella get command*/
++int
++search_gnu (const unsigned char *payload, const u16 plen)
++{
++    if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a))
++    {
++      if (memcmp(payload, "GET /get/", 9) == 0)       return ((IPP2P_DATA_GNU * 100) + 1);
++      if (memcmp(payload, "GET /uri-res/", 13) == 0) return ((IPP2P_DATA_GNU * 100) + 2); 
++    }
++    return 0;
++}
++
++
++/*check for gnutella get commands and other typical data*/
++int
++search_all_gnu (const unsigned char *payload, const u16 plen)
++{
++    
++    if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a))
++    {
++      
++      if (memcmp(payload, "GNUTELLA CONNECT/", 17) == 0) return ((IPP2P_GNU * 100) + 1);
++      if (memcmp(payload, "GNUTELLA/", 9) == 0) return ((IPP2P_GNU * 100) + 2);    
++    
++    
++      if ((memcmp(payload, "GET /get/", 9) == 0) || (memcmp(payload, "GET /uri-res/", 13) == 0))
++      {        
++              u16 c=8;
++              const u16 end=plen-22;
++              while (c < end) {
++                      if ( payload[c] == 0x0a && payload[c+1] == 0x0d && ((memcmp(&payload[c+2], "X-Gnutella-", 11) == 0) || (memcmp(&payload[c+2], "X-Queue:", 8) == 0))) 
++                              return ((IPP2P_GNU * 100) + 3);
++                      c++;
++              }
++      }
++    }
++    return 0;
++}
++
++
++/*check for KaZaA download commands and other typical data*/
++int
++search_all_kazaa (const unsigned char *payload, const u16 plen)
++{
++    if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a))
++    {
++
++      if (memcmp(payload, "GIVE ", 5) == 0) return ((IPP2P_KAZAA * 100) + 1);
++    
++      if (memcmp(payload, "GET /", 5) == 0) {
++              u16 c = 8;
++              const u16 end=plen-22;
++              while (c < end) {
++                      if ( payload[c] == 0x0a && payload[c+1] == 0x0d && ((memcmp(&payload[c+2], "X-Kazaa-Username: ", 18) == 0) || (memcmp(&payload[c+2], "User-Agent: PeerEnabler/", 24) == 0)))
++                              return ((IPP2P_KAZAA * 100) + 2);
++                      c++;
++              }
++      }
++    }
++    return 0;
++}
++
++/*fast check for edonkey file segment transfer command*/
++int
++search_edk (const unsigned char *payload, const u16 plen)
++{
++    if (payload[0] != 0xe3) 
++      return 0;
++    else {
++      if (payload[5] == 0x47) 
++          return (IPP2P_DATA_EDK * 100);
++      else    
++          return 0;
++    }
++}
++
++
++
++/*intensive but slower search for some edonkey packets including size-check*/
++int
++search_all_edk (const unsigned char *payload, const u16 plen)
++{
++    if (payload[0] != 0xe3) 
++      return 0;
++    else {
++      //t += head_len;        
++      const u16 cmd = get_u16(payload, 1);
++      if (cmd == (plen - 5)) {
++          switch (payload[5]) {
++              case 0x01: return ((IPP2P_EDK * 100) + 1);      /*Client: hello or Server:hello*/
++              case 0x4c: return ((IPP2P_EDK * 100) + 9);      /*Client: Hello-Answer*/
++          }
++      }
++      return 0;
++     }
++}
++
++
++/*fast check for Direct Connect send command*/
++int
++search_dc (const unsigned char *payload, const u16 plen)
++{
++
++    if (payload[0] != 0x24 ) 
++      return 0;
++    else {
++      if (memcmp(&payload[1], "Send|", 5) == 0)
++          return (IPP2P_DATA_DC * 100);
++      else
++          return 0;
++    } 
++
++}
++
++
++/*intensive but slower check for all direct connect packets*/
++int
++search_all_dc (const unsigned char *payload, const u16 plen)
++{
++//    unsigned char *t = haystack;
++
++    if (payload[0] == 0x24 && payload[plen-1] == 0x7c) 
++    {
++      const unsigned char *t=&payload[1];
++              /* Client-Hub-Protocol */
++      if (memcmp(t, "Lock ", 5) == 0)                 return ((IPP2P_DC * 100) + 1);
++      /* Client-Client-Protocol, some are already recognized by client-hub (like lock) */
++      if (memcmp(t, "MyNick ", 7) == 0)               return ((IPP2P_DC * 100) + 38); 
++    }
++    return 0;
++}
++
++/*check for mute*/
++int
++search_mute (const unsigned char *payload, const u16 plen)
++{
++      if ( plen == 209 || plen == 345 || plen == 473 || plen == 609 || plen == 1121 )
++      {
++              //printk(KERN_DEBUG "size hit: %u",size);
++              if (memcmp(payload,"PublicKey: ",11) == 0 )
++              { 
++                      return ((IPP2P_MUTE * 100) + 0);
++                      
++/*                    if (memcmp(t+size-14,"\x0aEndPublicKey\x0a",14) == 0)
++                      {
++                              printk(KERN_DEBUG "end pubic key hit: %u",size);
++                              
++                      }*/
++              }
++      }
++      return 0;
++}
++
++
++/* check for xdcc */
++int
++search_xdcc (const unsigned char *payload, const u16 plen)
++{
++      /* search in small packets only */
++      if (plen > 20 && plen < 200 && payload[plen-1] == 0x0a && payload[plen-2] == 0x0d && memcmp(payload,"PRIVMSG ",8) == 0)
++      {
++              
++              u16 x=10;
++              const u16 end=plen - 13;
++              
++              /* is seems to be a irc private massage, chedck for xdcc command */
++              while (x < end)
++              {
++                      if (payload[x] == ':')
++                      {
++                              if ( memcmp(&payload[x+1],"xdcc send #",11) == 0 )
++                                      return ((IPP2P_XDCC * 100) + 0);
++                      }
++                      x++;
++              }
++      }
++      return 0;
++}
++
++/* search for waste */
++int search_waste(const unsigned char *payload, const u16 plen)
++{
++      if ( plen >= 8 && memcmp(payload,"GET.sha1:",9) == 0)
++              return ((IPP2P_WASTE * 100) + 0);
++
++      return 0;
++}
++
++
++static struct {
++    int command;
++    __u8 short_hand;                  /*for fucntions included in short hands*/
++    int packet_len;
++    int (*function_name) (const unsigned char *, const u16);
++} matchlist[] = {
++    {IPP2P_EDK,SHORT_HAND_IPP2P,20, &search_all_edk},
++//    {IPP2P_DATA_KAZAA,SHORT_HAND_DATA,200, &search_kazaa},
++//    {IPP2P_DATA_EDK,SHORT_HAND_DATA,60, &search_edk},
++//    {IPP2P_DATA_DC,SHORT_HAND_DATA,26, &search_dc},
++    {IPP2P_DC,SHORT_HAND_IPP2P,5, search_all_dc},
++//    {IPP2P_DATA_GNU,SHORT_HAND_DATA,40, &search_gnu},
++    {IPP2P_GNU,SHORT_HAND_IPP2P,5, &search_all_gnu},
++    {IPP2P_KAZAA,SHORT_HAND_IPP2P,5, &search_all_kazaa},
++    {IPP2P_BIT,SHORT_HAND_IPP2P,20, &search_bittorrent},
++    {IPP2P_APPLE,SHORT_HAND_IPP2P,5, &search_apple},
++    {IPP2P_SOUL,SHORT_HAND_IPP2P,5, &search_soul},
++    {IPP2P_WINMX,SHORT_HAND_IPP2P,2, &search_winmx},
++    {IPP2P_ARES,SHORT_HAND_IPP2P,5, &search_ares},
++    {IPP2P_MUTE,SHORT_HAND_NONE,200, &search_mute},
++    {IPP2P_WASTE,SHORT_HAND_NONE,5, &search_waste},
++    {IPP2P_XDCC,SHORT_HAND_NONE,5, &search_xdcc},
++    {0,0,0,NULL}
++};
++
++
++static struct {
++    int command;
++    __u8 short_hand;                  /*for fucntions included in short hands*/
++    int packet_len;
++    int (*function_name) (unsigned char *, int);
++} udp_list[] = {
++    { IPP2P_KAZAA, SHORT_HAND_IPP2P, 14, &udp_search_kazaa},
++    { IPP2P_BIT,   SHORT_HAND_IPP2P, 23, &udp_search_bit},
++    { IPP2P_GNU,   SHORT_HAND_IPP2P, 11, &udp_search_gnu},
++    { IPP2P_EDK,   SHORT_HAND_IPP2P,  9, &udp_search_edk},
++    { IPP2P_DC,    SHORT_HAND_IPP2P, 12, &udp_search_directconnect},    
++    { 0, 0, 0, NULL }
++};
++
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23)
++static bool
++#else
++static int
++#endif
++match(const struct sk_buff *skb,
++      const struct net_device *in,
++      const struct net_device *out,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17)
++      const struct xt_match *match,
++#endif
++      const void *matchinfo,
++      int offset,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
++      const void *hdr,
++      u_int16_t datalen,
++#endif
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16)
++      unsigned int protoff,
++#endif
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23)
++      bool *hotdrop)
++#else
++      bool *hotdrop)
++#endif
++{
++    const struct ipt_p2p_info *info = matchinfo;
++    unsigned char  *haystack;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22)
++    struct iphdr *ip = ip_hdr(skb);
++#else
++    struct iphdr *ip = skb->nh.iph;
++#endif
++    int p2p_result = 0, i = 0;
++//    int head_len;
++    int hlen = ntohs(ip->tot_len)-(ip->ihl*4);        /*hlen = packet-data length*/
++
++    /*must not be a fragment*/
++    if (offset) {
++      if (info->debug) printk("IPP2P.match: offset found %i \n",offset);
++      return 0;
++    }
++    
++    /*make sure that skb is linear*/
++    if(skb_is_nonlinear(skb)){
++      if (info->debug) printk("IPP2P.match: nonlinear skb found\n");
++      return 0;
++    }
++
++
++    haystack=(char *)ip+(ip->ihl*4);          /*haystack = packet data*/
++
++    switch (ip->protocol){
++      case IPPROTO_TCP:               /*what to do with a TCP packet*/
++      {
++          struct tcphdr *tcph = (void *) ip + ip->ihl * 4;
++          
++          if (tcph->fin) return 0;  /*if FIN bit is set bail out*/
++          if (tcph->syn) return 0;  /*if SYN bit is set bail out*/
++          if (tcph->rst) return 0;  /*if RST bit is set bail out*/
++          
++          haystack += tcph->doff * 4; /*get TCP-Header-Size*/
++          hlen -= tcph->doff * 4;
++          while (matchlist[i].command) {
++              if ((((info->cmd & matchlist[i].command) == matchlist[i].command) ||
++                  ((info->cmd & matchlist[i].short_hand) == matchlist[i].short_hand)) &&
++                  (hlen > matchlist[i].packet_len)) {
++                          p2p_result = matchlist[i].function_name(haystack, hlen);
++                          if (p2p_result) 
++                          {
++                              if (info->debug) printk("IPP2P.debug:TCP-match: %i from: %u.%u.%u.%u:%i to: %u.%u.%u.%u:%i Length: %i\n", 
++                                  p2p_result, NIPQUAD(ip->saddr),ntohs(tcph->source), NIPQUAD(ip->daddr),ntohs(tcph->dest),hlen);
++                              return p2p_result;
++                          }
++              }
++          i++;
++          }
++          return p2p_result;
++      }
++      
++      case IPPROTO_UDP:               /*what to do with an UDP packet*/
++      {
++          struct udphdr *udph = (void *) ip + ip->ihl * 4;
++          
++          while (udp_list[i].command){
++              if ((((info->cmd & udp_list[i].command) == udp_list[i].command) ||
++                  ((info->cmd & udp_list[i].short_hand) == udp_list[i].short_hand)) &&
++                  (hlen > udp_list[i].packet_len)) {
++                          p2p_result = udp_list[i].function_name(haystack, hlen);
++                          if (p2p_result){
++                              if (info->debug) printk("IPP2P.debug:UDP-match: %i from: %u.%u.%u.%u:%i to: %u.%u.%u.%u:%i Length: %i\n", 
++                                  p2p_result, NIPQUAD(ip->saddr),ntohs(udph->source), NIPQUAD(ip->daddr),ntohs(udph->dest),hlen);
++                              return p2p_result;
++                          }
++              }
++          i++;
++          }                   
++          return p2p_result;
++      }
++    
++      default: return 0;
++    }
++}
++
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23)
++static bool
++#else
++static int
++#endif
++checkentry(const char *tablename,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16)
++            const void *ip,
++#else
++            const struct ipt_ip *ip,
++#endif
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17)
++            const struct xt_match *match,
++#endif
++          void *matchinfo,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)
++          unsigned int matchsize,
++#endif
++          unsigned int hook_mask)
++{
++        /* Must specify -p tcp */
++/*    if (ip->proto != IPPROTO_TCP || (ip->invflags & IPT_INV_PROTO)) {
++ *    printk("ipp2p: Only works on TCP packets, use -p tcp\n");
++ *    return 0;
++ *    }*/
++    return 1;
++}
++                                                                          
++
++
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
++static struct xt_match ipp2p_match = {
++#else
++static struct ipt_match ipp2p_match = { 
++#endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
++      { NULL, NULL }, 
++      "ipp2p", 
++      &ipp2p_match, 
++      &ipp2p_checkentry, 
++      NULL, 
++      THIS_MODULE
++#endif
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
++      .name           = "ipp2p",
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
++      .family         = AF_INET,
++#endif
++      .match          = &match,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17)
++      .matchsize      = sizeof(struct ipt_p2p_info),
++#endif
++      .checkentry     = &checkentry,
++      .me             = THIS_MODULE,
++#endif
++};
++
++
++static int __init init(void)
++{
++    printk(KERN_INFO "IPP2P v%s loading\n", IPP2P_VERSION);
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
++    return xt_register_match(&ipp2p_match);
++#else
++    return ipt_register_match(&ipp2p_match);
++#endif
++}
++      
++static void __exit fini(void)
++{
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
++    xt_unregister_match(&ipp2p_match);
++#else
++    ipt_unregister_match(&ipp2p_match);
++#endif
++    printk(KERN_INFO "IPP2P v%s unloaded\n", IPP2P_VERSION);    
++}
++      
++module_init(init);
++module_exit(fini);
++
++
diff --git a/src/scripts/backupiso b/src/scripts/backupiso
new file mode 100644 (file)
index 0000000..04b675c
--- /dev/null
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# FIXME: edit this lines before release
+#URL=http://download.ipfire.org/iso/
+#ISO=ipfire-2.3-beta4.i586-full.iso
+URL=http://www.rowie.at/ipfire/builds/v2.3test/Beta3/20080929-6uhr/
+ISO=ipfire-2.3-test.i586-full.iso
+
+if [ -z "$1" ]; then 
+       echo usage: $0 backup-file
+       exit
+fi
+
+TS=$1
+
+mkdir -p /var/tmp/backupiso
+cd /var/tmp/backupiso
+
+echo "Fetching ${URL}${ISO}"
+wget --quiet -c ${URL}${ISO}
+echo "Fetching ${URL}md5sums.txt"
+wget --quiet -O md5sums.txt ${URL}md5sums.txt
+
+echo "Checking md5 of ${ISO}"
+cat md5sums.txt | grep iso | tr '\r' '\n' | md5sum --status -c
+RETVAR="$?"
+if [ $RETVAR -eq 0 -o $RETVAR -eq 24 ]
+       then
+                echo "md5 is OK"
+       else
+                echo "md5 mismatch"
+               echo "Fetching again ${URL}${ISO}"
+               wget --quiet -O ${ISO} ${URL}${ISO}
+fi
+
+echo "Remastering iso"
+mkdir -p backupiso.tmp.${TS}
+mount -o loop ${ISO} backupiso.tmp.${TS}
+cp -pr backupiso.tmp.${TS} backupiso.${TS}
+umount backupiso.tmp.${TS}
+rm -r backupiso.tmp.${TS}
+
+echo "RESTORE=${TS}.ipf" >> backupiso.${TS}/boot/unattended.conf
+cp /var/ipfire/backup/${TS}.ipf backupiso.${TS}
+
+echo "Running mkisofs"
+mkisofs -J -r -V "ipfire backup ${TS}" \
+            -b boot/isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table \
+            -c boot/isolinux/boot.catalog backupiso.${TS} > `basename ${ISO} .iso`-${TS}.iso
+
+echo "Cleaning up"
+rm -rf backupiso.${TS}
index cfe5f8fa39985926efea8294d322c82cce0f8728..5369ab9d9e78102e4add650a74cd0983a5fb31d5 100644 (file)
@@ -32,7 +32,6 @@ require "${General::swroot}/lang.pl";
 # Settings
 $ENV{PATH}="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";
 my $temp = '';
-my $rrdlog = '/var/log/rrd';
 my $ERROR;
 my $path_smartctl = "/usr/sbin/smartctl";
 
@@ -47,9 +46,9 @@ sub updatehdddata
         my $standby;
         my @array = split(/\//,$disk);
 
-        if ( ! -e "$rrdlog/hddshutdown-".$array[$#array].".rrd"){
+        if ( ! -e "$mainsettings{'RRDLOG'}/hddshutdown-".$array[$#array].".rrd"){
                 # database did not exist -> create
-                RRDs::create ("$rrdlog/hddshutdown-".$array[$#array].".rrd", "--step=300",
+                RRDs::create ("$mainsettings{'RRDLOG'}/hddshutdown-".$array[$#array].".rrd", "--step=300",
                 "DS:standby:GAUGE:600:0:1",
                 "RRA:AVERAGE:0.5:1:576",
                 "RRA:AVERAGE:0.5:6:672",
@@ -62,13 +61,13 @@ sub updatehdddata
         if (-e "/tmp/hddshutdown-".$array[$#array]) {$standby = 1;}
         else {$standby = 0;}
 
-        RRDs::update ("$rrdlog/hddshutdown-".$array[$#array].".rrd", "-t", "standby", "N:$standby");
+        RRDs::update ("$mainsettings{'RRDLOG'}/hddshutdown-".$array[$#array].".rrd", "-t", "standby", "N:$standby");
         $ERROR = RRDs::error;
         print "Error in RRD::update for hddshutdown-".$array[$#array].": $ERROR\n" if $ERROR;
 
-        if ( ! -e "$rrdlog/hddtemp-".$array[$#array].".rrd"){
+        if ( ! -e "$mainsettings{'RRDLOG'}/hddtemp-".$array[$#array].".rrd"){
                 # database did not exist -> create
-                RRDs::create ("$rrdlog/hddtemp-".$array[$#array].".rrd", "--step=300",
+                RRDs::create ("$mainsettings{'RRDLOG'}/hddtemp-".$array[$#array].".rrd", "--step=300",
                 "DS:temperature:GAUGE:600:0:100",
                 "RRA:AVERAGE:0.5:1:576",
                 "RRA:AVERAGE:0.5:6:672",
@@ -91,7 +90,7 @@ sub updatehdddata
                 print "Temperature for ".$array[$#array]."->".$temp."<-\n";
                 # Nur ins RDD wenn nicht 0 (sonst klappt die min Anzeige nicht)
                 if ($temp){
-                        RRDs::update ("$rrdlog/hddtemp-".$array[$#array].".rrd", "-t", "temperature", "N:$temp");
+                        RRDs::update ("$mainsettings{'RRDLOG'}/hddtemp-".$array[$#array].".rrd", "-t", "temperature", "N:$temp");
                         $ERROR = RRDs::error;
                         print "Error in RRD::update for hdd-".$array[$#array].": $ERROR\n" if $ERROR;
                 }
index 4587d126d8fa2d613aa8a6dc95829378385c020f..21498824f44f4ead465fddd9208c4413e722c5e0 100644 (file)
@@ -1,4 +1,4 @@
-#!/usr/bin/perl -w 
+#!/usr/bin/perl -w
 use strict;
 
 ##########################################
@@ -47,8 +47,13 @@ use strict;
 # Configuration options:
 #
 my  $device        = "$ARGV[0]";
-our $rrd_datadir   = "/var/log/rrd/";
-our $event_datadir = $rrd_datadir;
+
+our %mainsettings = ();
+require '/var/ipfire/general-functions.pl';
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+
+our $rrd_datadir   = $mainsettings{'RRDLOG'}."/";
+our $event_datadir = $mainsettings{'RRDLOG'};
 our $STEP          = 10;
 our $tc_command    = "/sbin/tc";
 
@@ -58,20 +63,20 @@ our $tc_command    = "/sbin/tc";
 my $include_dir = '/var/ipfire/qos/bin';
 
 
-# Create the $rrd_datadir if it doesn't exists
-if ( ! -d $rrd_datadir ) {
-    print "RRD-datadir not found, creating it: $rrd_datadir \n";
-    my $status = system("mkdir $rrd_datadir");
-    die "\nERROR cannot create \"$rrd_datadir\"\n" unless $status == 0;
+# Create the $mainsettings{'RRDLOG'} if it doesn't exists
+if ( ! -d $mainsettings{'RRDLOG'} ) {
+    print "RRD-datadir not found, creating it: $mainsettings{'RRDLOG'} \n";
+    my $status = system("mkdir $mainsettings{'RRDLOG'}");
+    die "\nERROR cannot create \"$mainsettings{'RRDLOG'}\"\n" unless $status == 0;
 }
 
 # use POSIX;
 #
-#POSIX::setsid() 
+#POSIX::setsid()
 #    or die "Can't become a daemon: $!";
 
 # The init scripts will do the right "daemon" thing...
-# Become a daemon  
+# Become a daemon
 print "Becoming a daemon...\n";
 my $pid = fork;
 exit if $pid;
@@ -88,6 +93,7 @@ $SIG{PIPE} = 'IGNORE';
 our %classes_data;
 our %classes_info;
 require "$include_dir/parse-func.pl";
+require "$include_dir/event-func.pl";
 require "$include_dir/RRD-func.pl";
 
 until ($time_to_die) {
@@ -103,10 +109,10 @@ until ($time_to_die) {
     #if ( $res ) {
     #  print " Error updating RRDs: \"$res\"\n";
     #}
-    
+
 #    my $timestamp = time;
 #    print "$timestamp\n";
-   
+
     sleep($STEP);
 }
 
index 775c6ed03b2f3ed185b9324c82d8f1fcaba605f2..73d91904571e5da32fd19252bba1cdc14c2f5888 100644 (file)
@@ -75,7 +75,6 @@ if ( &General::IpInSubnet ($ip,'10.0.0.0','255.0.0.0') ||
     }
 }
 
-
 if ($ARGV[0] eq '-f') {
        unlink ($cachefile);    # next regular calls will try again if this force update fails.
 } else {
@@ -175,6 +174,33 @@ if ($ip ne $ipcache) {
                                &General::log("Dynamic DNS ip-update for cjb.net ($settings{'LOGIN'}) : failure (could not connect to server)");
                            }
                        }
+                       elsif ($settings{'SERVICE'} eq 'mydyn') {
+                           # use proxy ?
+                           my %proxysettings;
+                           &General::readhash("${General::swroot}/proxy/settings", \%proxysettings);
+                           if ($_=$proxysettings{'UPSTREAM_PROXY'}) {
+                               my ($peer, $peerport) = (/^(?:[a-zA-Z ]+\:\/\/)?(?:[A-Za-z0-9\_\.\-]*?(?:\:[A-Za-z0-9\_\.\-]*?)?\@)?([a-zA-Z0-9\.\_\-]*?)(?:\:([0-9]{1,5}))?(?:\/.*?)?$/);
+                               Net::SSLeay::set_proxy($peer,$peerport,$proxysettings{'UPSTREAM_USER'},$proxysettings{'UPSTREAM_PASSWORD'} );
+                           }
+
+                           my ($out, $response) = Net::SSLeay::get_http(  'www.mydyn.de',
+                                                                           80,
+                                                                           "/cgi-bin/update.pl?$settings{'LOGIN'}-$settings{'PASSWORD'}",
+                                                                           Net::SSLeay::make_headers('User-Agent' => 'IPFire' )
+                                                                       );
+
+                           if ($response =~ m%HTTP/1\.. 200 OK%) {
+                               if ( $out !~ m/The IP address of the subdomain/ ) {
+                                   &General::log("Dynamic DNS ip-update for mydyn.de ($settings{'LOGIN'}) : failure (bad password or login)");
+                               } else {
+                                   &General::log("Dynamic DNS ip-update for mydyn.de ($settings{'LOGIN'}) : success");
+                                   $success++;
+                               }
+                           } else {
+                               &General::log("Dynamic DNS ip-update for mydyn.de ($settings{'LOGIN'}) : failure (could not connect to server)");
+                           }
+
+                       }
                        elsif ($settings{'SERVICE'} eq 'selfhost') {
                            # use proxy ?
                            my %proxysettings;