X-Git-Url: http://git.ipfire.org/?p=people%2Fpmueller%2Fipfire-2.x.git;a=blobdiff_plain;f=config%2Fcfgroot%2Fheader.pl;h=fac3b0d15c13a1f38d2b438750a8da7affe91dc9;hp=f219de15573859353104b6b8bb4c0d8d48eaafba;hb=810a7ea2f2079d369c5291e2f91525d16d81637a;hpb=10a04d70a4c10ce105fe47fea763fc390c2036dd diff --git a/config/cfgroot/header.pl b/config/cfgroot/header.pl index f219de1557..fac3b0d15c 100644 --- a/config/cfgroot/header.pl +++ b/config/cfgroot/header.pl @@ -19,6 +19,7 @@ $|=1; # line buffering $Header::revision = 'final'; $Header::swroot = '/var/ipfire'; +$Header::graphdir='/srv/web/ipfire/html/graphs'; $Header::pagecolour = '#ffffff'; #$Header::tablecolour = '#a0a0a0'; $Header::tablecolour = '#FFFFFF'; @@ -32,6 +33,7 @@ $Header::colourorange = '#FF9933'; $Header::colouryellow = '#FFFF00'; $Header::colourgreen = '#339933'; $Header::colourblue = '#333399'; +$Header::colourovpn = '#339999'; $Header::colourfw = '#000000'; $Header::colourvpn = '#990099'; $Header::colourerr = '#FF0000'; @@ -42,18 +44,17 @@ my $menu = \%menuhash; %settings = (); %ethsettings = (); @URI = (); -$Header::supported=0; ### Make sure this is an SSL request if ($ENV{'SERVER_ADDR'} && $ENV{'HTTPS'} ne 'on') { print "Status: 302 Moved\r\n"; - print "Location: https://$ENV{'SERVER_ADDR'}:10443/$ENV{'PATH_INFO'}\r\n\r\n"; + print "Location: https://$ENV{'SERVER_ADDR'}:444/$ENV{'PATH_INFO'}\r\n\r\n"; exit 0; } ### Initialize environment -&readhash("${swroot}/main/settings", \%settings); -&readhash("${swroot}/ethernet/settings", \%ethsettings); +&General::readhash("${swroot}/main/settings", \%settings); +&General::readhash("${swroot}/ethernet/settings", \%ethsettings); $language = $settings{'LANGUAGE'}; $hostname = $settings{'HOSTNAME'}; $hostnameintitle = 0; @@ -86,26 +87,35 @@ if ( -d "/var/ipfire/langs/${language}/" ) { }; }; +### Read IPFire Buildversion +$FIREBUILD = "File not found: firebuild\n"; +if (open(MYFile, "<${swroot}/firebuild")) { + $FIREBUILD = ; + chomp($FIREBUILD); + $FIREBUILD = "(Build: $FIREBUILD)"; + close(MYFile); +}; require "${swroot}/langs/en.pl"; require "${swroot}/langs/${language}.pl"; +eval `/bin/cat /srv/web/ipfire/html/themes/$settings{'THEME'}/include/functions.pl`; sub orange_used () { - if ($ethsettings{'CONFIG_TYPE'} =~ /^[1357]$/) { + if ($ethsettings{'CONFIG_TYPE'} =~ /^[24]$/) { return 1; } return 0; } sub blue_used () { - if ($ethsettings{'CONFIG_TYPE'} =~ /^[4567]$/) { + if ($ethsettings{'CONFIG_TYPE'} =~ /^[34]$/) { return 1; } return 0; } sub is_modem { - if ($ethsettings{'CONFIG_TYPE'} =~ /^[0145]$/) { + if ($ethsettings{'CONFIG_TYPE'} =~ /^[0]$/) { return 1; } return 0; @@ -113,351 +123,47 @@ sub is_modem { ### Initialize menu sub genmenu { + my %subsystemhash = (); my $subsystem = \%subsystemhash; - $subsystem->{'01.home'} = { - 'caption' => $tr{'alt home'}, - 'uri' => '/cgi-bin/index.cgi', - 'title' => "$tr{'alt home'}", - 'enabled' => 1, - }; - $subsystem->{'02.netwizard'} = { - 'caption' => $tr{'network configuration'}, - 'uri' => '/cgi-bin/netwizard.cgi', - 'title' => "$tr{'network configuration'}", - 'enabled' => 1, - }; - $subsystem->{'03.passwords'} = { - 'caption' => $tr{'sspasswords'}, - 'uri' => '/cgi-bin/changepw.cgi', - 'title' => "$tr{'sspasswords'}", - 'enabled' => 1, - }; - $subsystem->{'04.ssh'} = { - 'caption' => $tr{'ssh access'}, - 'uri' => '/cgi-bin/remote.cgi', - 'title' => "$tr{'ssh access'}", - 'enabled' => 1, - }; - $subsystem->{'05.gui'} = { - 'caption' => $tr{'gui settings'}, - 'uri' => '/cgi-bin/gui.cgi', - 'title' => "$tr{'gui settings'}", - 'enabled' => 1, - }; - $subsystem->{'06.backup'} = { - 'caption' => $tr{'backup'}, - 'uri' => '/cgi-bin/backup.cgi', - 'title' => "$tr{'backup'} / $tr{'restore'}", - 'enabled' => 0, - }; - $subsystem->{'07.shutdown'} = { - 'caption' => $tr{'shutdown'}, - 'uri' => '/cgi-bin/shutdown.cgi', - 'title' => "$tr{'shutdown'} / $tr{'reboot'}", - 'enabled' => 1, - }; - $subsystem->{'08.credits'} = { - 'caption' => $tr{'credits'}, - 'uri' => '/cgi-bin/credits.cgi', - 'title' => "$tr{'credits'}", - 'enabled' => 1, - }; - my %substatushash = (); my $substatus = \%substatushash; - $substatus->{'01.systemstatus'} = { - 'caption' => $tr{'sssystem status'}, - 'uri' => '/cgi-bin/status.cgi', - 'title' => "$tr{'system status information'}", - 'enabled' => 1, - }; - $substatus->{'02.networkstatus'} = { - 'caption' => $tr{'ssnetwork status'}, - 'uri' => '/cgi-bin/netstatus.cgi', - 'title' => "$tr{'network status information'}", - 'enabled' => 1, - }; - $substatus->{'03.systemgraphs'} = { - 'caption' => $tr{'system graphs'}, - 'uri' => '/cgi-bin/graphs.cgi', - 'novars' => 1, - 'title' => "$tr{'system graphs'}", - 'enabled' => 1, - }; - $substatus->{'04.trafficgraphs'} = { - 'caption' => $tr{'sstraffic graphs'}, - 'uri' => '/cgi-bin/graphs.cgi', - 'vars' => 'graph=network', - 'title' => "$tr{'network traffic graphs'}", - 'enabled' => 1, - }; - $substatus->{'05.proxygraphs'} = { - 'caption' => $tr{'ssproxy graphs'}, - 'uri' => '/cgi-bin/proxygraphs.cgi', - 'title' => "$tr{'proxy access graphs'}", - 'enabled' => 1, - }; - $substatus->{'06.connections'} = { - 'caption' => $tr{'connections'}, - 'uri' => '/cgi-bin/connections.cgi', - 'title' => "$tr{'connections'}", - 'enabled' => 1, - }; - $substatus->{'99.iptfilters'} = { - 'caption' => $tr{'iptfilters iptable rules'}, - 'uri' => '/cgi-bin/iptfilters.cgi', - 'title' => "$tr{'iptfilters iptable rules'}", - 'enabled' => 1, - }; my %subnetworkhash = (); my $subnetwork = \%subnetworkhash; - $subnetwork->{'01.dialup'} = { - 'caption' => $tr{'alt dialup'}, - 'uri' => '/cgi-bin/pppsetup.cgi', - 'title' => "$tr{'dialup settings'}", - 'enabled' => 0, - }; - $subnetwork->{'02.hosts'} = { - 'caption' => $tr{'edit hosts'}, - 'uri' => '/cgi-bin/hosts.cgi', - 'title' => "$tr{'host configuration'}", - 'enabled' => 1, - }; - $subnetwork->{'03.upload'} = { - 'caption' => $tr{'upload'}, - 'uri' => '/cgi-bin/upload.cgi', - 'title' => "$tr{'firmware upload'}", - 'enabled' => 0, - }; - $subnetwork->{'04.aliases'} = { - 'caption' => $tr{'aliases'}, - 'uri' => '/cgi-bin/aliases.cgi', - 'title' => "$tr{'external aliases configuration'}", - 'enabled' => 1, - }; - $subnetwork->{'05.nettraf'} = { - 'caption' => '$tr{'sstraffic'}', - 'uri' => '/cgi-bin/traffic.cgi', - 'title' => "$tr{'sstraffic'}", - 'enabled' => 1, - }; - - $subnetwork->{'06.openvpn'} = { - 'caption' => 'OpenVPN', - 'uri' => '/cgi-bin/ovpnmain.cgi', - 'title' => "$tr{'virtual private networking'}", - 'enabled' => 1, - }; - $subnetwork->{'07.ipsec'} = { - 'caption' => 'IPSec, - 'uri' => '/cgi-bin/vpnmain.cgi', - 'title' => "$tr{'virtual private networking'}", - 'enabled' => 1, - }; - - my %subserviceshash = (); my $subservices = \%subserviceshash; - $subservices->{'01.proxy'} = { - 'caption' => $tr{'proxy'}, - 'uri' => '/cgi-bin/proxy.cgi', - 'title' => "HTTP: $tr{'web proxy configuration'}", - 'enabled' => 1, - }; - $subservices->{'02.dhcp'} = { - 'caption' => $tr{'dhcp server'}, - 'uri' => '/cgi-bin/dhcp.cgi', - 'title' => "$tr{'dhcp configuration'}", - 'enabled' => 1, - }; - $subservices->{'03.dyndns'} = { - 'caption' => $tr{'dynamic dns'}, - 'uri' => '/cgi-bin/ddns.cgi', - 'title' => "$tr{'dynamic dns client'}", - 'enabled' => 1, - }; - $subservices->{'04.time'} = { - 'caption' => $tr{'time server'}, - 'uri' => '/cgi-bin/time.cgi', - 'title' => "$tr{'time server'}", - 'enabled' => 1, - }; - $subservices->{'05.qos'} = { - 'caption' => 'Quality of Service', - 'uri' => '/cgi-bin/qos.cgi', - 'title' => "$tr{'traffic shaping settings'}", - 'enabled' => 1, - }; - $subservices->{'06.ids'} = {'caption' => $tr{'intrusion detection'}, - 'enabled' => 1, - 'uri' => '/cgi-bin/ids.cgi', - 'title' => "$tr{'intrusion detection system'} (Snort)", - }; - - my %subfirewallhash = (); my $subfirewall = \%subfirewallhash; - - $subfirewall->{'01.dnat'} = { - 'caption' => $tr{'ssport forwarding'}, - 'uri' => '/cgi-bin/portfw.cgi', - 'title' => "$tr{'port forwarding configuration'}", - 'enabled' => 1, - }; - $subfirewall->{'02.xtaccess'} = { - 'caption' => $tr{'external access'}, - 'uri' => '/cgi-bin/xtaccess.cgi', - 'title' => "$tr{'external access configuration'}", - 'enabled' => 1, - }; - $subfirewall->{'03.dmz'} = { - 'caption' => $tr{'ssdmz pinholes'}, - 'uri' => '/cgi-bin/dmzholes.cgi', - 'title' => "$tr{'dmz pinhole configuration'}", - 'enabled' => 1, - }; - $subfirewall->{'04.outgoing'} = { - 'caption' => $tr{'outgoing firewall'}, - 'uri' => '/cgi-bin/outgoingfw.cgi', - 'title' => "$tr{'outgoing firewall'}", - 'enabled' => 1, - }; - + my %subipfirehash = (); + my $subipfire = \%subipfirehash; my %sublogshash = (); my $sublogs = \%sublogshash; - $sublogs->{'01.summary'} = {'caption' => $tr{'log summary'}, - 'uri' => '/cgi-bin/logs.cgi/summary.dat', - 'title' => "$tr{'log summary'}", - 'enabled' => 1 - }; - $sublogs->{'02.settings'} = {'caption' => $tr{'log settings'}, - 'uri' => '/cgi-bin/logs.cgi/config.dat', - 'title' => "$tr{'log settings'}", - 'enabled' => 1 - }; - $sublogs->{'03.proxy'} = {'caption' => $tr{'proxy logs'}, - 'uri' => '/cgi-bin/logs.cgi/proxylog.dat', - 'title' => "$tr{'proxy log viewer'}", - 'enabled' => 1 - }; - $sublogs->{'04.firewall'} = {'caption' => $tr{'firewall logs'}, - 'uri' => '/cgi-bin/logs.cgi/firewalllog.dat', - 'title' => "$tr{'firewall log viewer'}", - 'enabled' => 1 - }; - $sublogs->{'05.ids'} = {'caption' => $tr{'ids logs'}, - 'uri' => '/cgi-bin/logs.cgi/ids.dat', - 'title' => "$tr{'intrusion detection system log viewer'}", - 'enabled' => 1 - }; - $sublogs->{'06.contentfilter'} = {'caption' => $tr{'content filter logs'}, - 'uri' => '/cgi-bin/logs.cgi/dansguardian.dat', - 'title' => "$tr{'content filter log viewer'}", - 'enabled' => 1 - }; - $sublogs->{'07.urlfilter'} = { - 'caption' => $tr{'urlfilter log'}, - 'uri' => '/cgi-bin/logs.cgi/urlfilter.dat', - 'title' => "$tr{'urlfilter log'}", - 'enabled' => 1, - }; - $sublogs->{'08.openvpn'} = {'caption' => $tr{'openvpn log'}, - 'uri' => '/cgi-bin/logs.cgi/openvpn.dat', - 'title' => "$tr{'openvpn log'}", - 'enabled' => 1 - }; - $sublogs->{'09.system'} = {'caption' => $tr{'system logs'}, - 'uri' => '/cgi-bin/logs.cgi/log.dat', - 'title' => "$tr{'system log viewer'}", - 'enabled' => 1 - }; - $sublogs->{'10.userlog'} = {'caption' => $tr{'user proxy logs'}, - 'uri' => '/cgi-bin/logs.cgi/userlog.dat', - 'title' => "$tr{'user log viewer'}", - 'enabled' => 1 - }; - - my %subipfirehash = (); - my $subipfire = \%subipfirehash; - $subipfire->{'01.pakfire'} = {'caption' => $tr{'pakfire'}, - 'uri' => '/cgi-bin/pakfire.cgi', - 'title' => "$tr{'paketmanager'}", - 'enabled' => 1, - }; - $subipfire->{'02.asterisk'} = {'caption' => $tr{'asterisk'}, - 'uri' => '/cgi-bin/asterisk.cgi', - 'title' => "$tr{'asterisk'}", - 'enabled' => 1, - }; - $subipfire->{'02.samba'} = {'caption' => $tr{'samba'}, - 'uri' => '/cgi-bin/samba.cgi', - 'title' => "$tr{'samba'}", - 'enabled' => 1, - }; - $subipfire->{'99.help'} = {'caption' => $tr{'help'}, - 'uri' => '/cgi-bin/help.cgi', - 'title' => "$tr{'help'}", - 'enabled' => 1, - }; - - - - $menu->{'01.system'} = {'caption' => $tr{'alt system'}, - 'enabled' => 1, - 'subMenu' => $subsystem - }; - $menu->{'02.status'} = {'caption' => $tr{'status'}, - 'enabled' => 1, - 'subMenu' => $substatus - }; - $menu->{'03.network'} = {'caption' => $tr{'network'}, - 'enabled' => 1, - 'subMenu' => $subnetwork - }; - $menu->{'04.services'} = {'caption' => $tr{'alt services'}, - 'enabled' => 1, - 'subMenu' => $subservices - }; - $menu->{'05.firewall'} = {'caption' => $tr{'firewall'}, - 'enabled' => 1, - 'subMenu' => $subfirewall - }; - $menu->{'06.proxy'} = {'caption' => $tr{'alt proxy'}, - 'enabled' => 1, - 'subMenu' => $subproxy - }; - $menu->{'07.ipfire'} = {'caption' => 'IPFire', - 'enabled' => 1, - 'subMenu' => $subvpn - }; - $menu->{'08.logs'} = {'caption' => $tr{'alt logs'}, - 'enabled' => 1, - 'subMenu' => $sublogs - }; + eval `/bin/cat /var/ipfire/menu.d/*.menu`; + eval `/bin/cat /var/ipfire/menu.d/*.main`; if (! blue_used() && ! orange_used()) { - $menu->{'05.firewall'}{'subMenu'}->{'03.dmz'}{'enabled'} = 0; + $menu->{'05.firewall'}{'subMenu'}->{'40.dmz'}{'enabled'} = 0; } - if (-e '/etc/FLASH') { - $menu{'06.proxy'}{'subMenu'}->{'01.http'}{'subMenu'}->{'01.proxy'}{'enabled'} = 0; #disable squid - $menu{'04.services'}{'subMenu'}->{'05.ids'}{'enabled'} = 0; #disable ids - $menu{'08.logs'}{'subMenu'}->{'05.ids'}{'enabled'} = 0; #disable ids + if (! blue_used()) { + $menu->{'05.firewall'}{'subMenu'}->{'30.wireless'}{'enabled'} = 0; + } + if ( $ethsettings{'CONFIG_TYPE'} =~ /^(1|2|3|4)$/ && $ethsettings{'RED_TYPE'} eq 'STATIC' ) { + $menu->{'03.network'}{'subMenu'}->{'70.aliases'}{'enabled'} = 1; } } sub showhttpheaders { - print "Pragma: no-cache\n"; - print "Cache-control: no-cache\n"; - print "Connection: close\n"; +# print "Pragma: no-cache\n"; +# print "Cache-control: no-cache\n"; +# print "Connection: close\n"; print "Content-type: text/html\n\n"; } @@ -547,359 +253,6 @@ sub gettitle($) { return ''; } - -sub showmenu() { - print < -