mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-24 01:42:58 +02:00
Merge branch 'next' of ssh://git.ipfire.org/pub/git/ipfire-2.x into monit
This commit is contained in:
1
config/backup/includes/icinga
Normal file
1
config/backup/includes/icinga
Normal file
@@ -0,0 +1 @@
|
||||
/etc/icinga
|
||||
@@ -1,11 +1,16 @@
|
||||
Listen 1009
|
||||
|
||||
<VirtualHost *:1009>
|
||||
|
||||
DocumentRoot /usr/share/cacti
|
||||
|
||||
Include /etc/httpd/conf/conf.d/php*.conf
|
||||
|
||||
Alias /cacti /usr/share/cacti
|
||||
<Directory /usr/share/cacti>
|
||||
Options FollowSymLinks
|
||||
AllowOverride None
|
||||
</Directory>
|
||||
|
||||
RewriteEngine on
|
||||
RewriteRule ^/$ /cacti/ [R]
|
||||
</VirtualHost>
|
||||
|
||||
6
config/cacti/cacti.logrotate
Normal file
6
config/cacti/cacti.logrotate
Normal file
@@ -0,0 +1,6 @@
|
||||
/var/log/cacti/cacti.log {
|
||||
missingok
|
||||
monthly
|
||||
notifempty
|
||||
compress
|
||||
}
|
||||
BIN
config/cacti/d.gif
Normal file
BIN
config/cacti/d.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.9 KiB |
BIN
config/cacti/d.png
Normal file
BIN
config/cacti/d.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.5 KiB |
BIN
config/cacti/throbber.gif
Normal file
BIN
config/cacti/throbber.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
@@ -10,7 +10,7 @@ kmem:x:9:
|
||||
wheel:x:10:root
|
||||
mail:x:12:mail
|
||||
uucp:x:14:
|
||||
dialout:x:16:
|
||||
dialout:x:16:nobody
|
||||
floppy:x:19:
|
||||
tape:x:20:
|
||||
utmp:x:22:
|
||||
|
||||
@@ -57,6 +57,9 @@ HAVE_OPENVPN="true"
|
||||
|
||||
# INPUT
|
||||
|
||||
# Allow access from GREEN
|
||||
iptables -A POLICYIN -i "${GREEN_DEV}" -j ACCEPT
|
||||
|
||||
# IPsec INPUT
|
||||
case "${HAVE_IPSEC},${POLICY}" in
|
||||
true,MODE1) ;;
|
||||
|
||||
37
config/icinga/icinga.conf
Normal file
37
config/icinga/icinga.conf
Normal file
@@ -0,0 +1,37 @@
|
||||
Listen 1010
|
||||
|
||||
<VirtualHost *:1010>
|
||||
ScriptAlias /icinga/cgi-bin /usr/share/icinga/cgi-bin
|
||||
Alias /icinga /usr/share/icinga/
|
||||
|
||||
RewriteEngine on
|
||||
RewriteRule ^/$ /icinga/ [R]
|
||||
|
||||
<Directory /usr/share/icinga/cgi-bin>
|
||||
Options ExecCGI
|
||||
AllowOverride None
|
||||
|
||||
AuthName "Icinga Access"
|
||||
AuthType Basic
|
||||
AuthUserFile /etc/icinga/htpasswd.users
|
||||
|
||||
Order allow,deny
|
||||
Allow from all
|
||||
|
||||
Require valid-user
|
||||
</Directory>
|
||||
|
||||
<Directory /usr/share/icinga/>
|
||||
Options None
|
||||
AllowOverride All
|
||||
|
||||
AuthName "Icinga Access"
|
||||
AuthType Basic
|
||||
AuthUserFile /etc/icinga/htpasswd.users
|
||||
|
||||
Order allow,deny
|
||||
Allow from all
|
||||
|
||||
Require valid-user
|
||||
</Directory>
|
||||
</VirtualHost>
|
||||
@@ -953,6 +953,7 @@ CONFIG_NET_SCH_CHOKE=m
|
||||
CONFIG_NET_SCH_QFQ=m
|
||||
CONFIG_NET_SCH_CODEL=m
|
||||
CONFIG_NET_SCH_FQ_CODEL=m
|
||||
CONFIG_NET_SCH_PIE=m
|
||||
CONFIG_NET_SCH_INGRESS=m
|
||||
CONFIG_NET_SCH_PLUG=m
|
||||
|
||||
|
||||
@@ -1142,6 +1142,7 @@ CONFIG_NET_SCH_CHOKE=m
|
||||
CONFIG_NET_SCH_QFQ=m
|
||||
CONFIG_NET_SCH_CODEL=m
|
||||
CONFIG_NET_SCH_FQ_CODEL=m
|
||||
CONFIG_NET_SCH_PIE=m
|
||||
CONFIG_NET_SCH_INGRESS=m
|
||||
CONFIG_NET_SCH_PLUG=m
|
||||
|
||||
|
||||
@@ -888,6 +888,7 @@ CONFIG_NET_SCH_CHOKE=m
|
||||
CONFIG_NET_SCH_QFQ=m
|
||||
CONFIG_NET_SCH_CODEL=m
|
||||
CONFIG_NET_SCH_FQ_CODEL=m
|
||||
CONFIG_NET_SCH_PIE=m
|
||||
CONFIG_NET_SCH_INGRESS=m
|
||||
CONFIG_NET_SCH_PLUG=m
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/x86 3.10.33 Kernel Configuration
|
||||
# Linux/x86 3.10.40-ipfire Kernel Configuration
|
||||
#
|
||||
# CONFIG_64BIT is not set
|
||||
CONFIG_X86_32=y
|
||||
@@ -582,29 +582,29 @@ CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
|
||||
# x86 CPU frequency scaling drivers
|
||||
#
|
||||
CONFIG_X86_INTEL_PSTATE=y
|
||||
CONFIG_X86_PCC_CPUFREQ=y
|
||||
CONFIG_X86_ACPI_CPUFREQ=y
|
||||
CONFIG_X86_PCC_CPUFREQ=m
|
||||
CONFIG_X86_ACPI_CPUFREQ=m
|
||||
# CONFIG_X86_ACPI_CPUFREQ_CPB is not set
|
||||
# CONFIG_X86_POWERNOW_K6 is not set
|
||||
CONFIG_X86_POWERNOW_K7=y
|
||||
CONFIG_X86_POWERNOW_K6=m
|
||||
CONFIG_X86_POWERNOW_K7=m
|
||||
CONFIG_X86_POWERNOW_K7_ACPI=y
|
||||
CONFIG_X86_POWERNOW_K8=y
|
||||
# CONFIG_X86_AMD_FREQ_SENSITIVITY is not set
|
||||
# CONFIG_X86_GX_SUSPMOD is not set
|
||||
CONFIG_X86_POWERNOW_K8=m
|
||||
CONFIG_X86_AMD_FREQ_SENSITIVITY=m
|
||||
CONFIG_X86_GX_SUSPMOD=m
|
||||
# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
|
||||
CONFIG_X86_SPEEDSTEP_ICH=y
|
||||
CONFIG_X86_SPEEDSTEP_SMI=y
|
||||
CONFIG_X86_P4_CLOCKMOD=y
|
||||
# CONFIG_X86_CPUFREQ_NFORCE2 is not set
|
||||
CONFIG_X86_LONGRUN=y
|
||||
# CONFIG_X86_LONGHAUL is not set
|
||||
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 is not set
|
||||
|
||||
#
|
||||
# shared options
|
||||
#
|
||||
CONFIG_X86_SPEEDSTEP_LIB=y
|
||||
# CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
|
||||
CONFIG_X86_SPEEDSTEP_LIB=m
|
||||
CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
|
||||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
|
||||
CONFIG_CPU_IDLE_GOV_LADDER=y
|
||||
@@ -913,6 +913,8 @@ CONFIG_NETFILTER_XT_MATCH_HELPER=m
|
||||
CONFIG_NETFILTER_XT_MATCH_HL=m
|
||||
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
|
||||
# CONFIG_NETFILTER_XT_MATCH_IPVS is not set
|
||||
CONFIG_NETFILTER_XT_MATCH_LAYER7=m
|
||||
# CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set
|
||||
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
|
||||
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_MAC=m
|
||||
@@ -931,8 +933,6 @@ CONFIG_NETFILTER_XT_MATCH_RECENT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_SCTP=m
|
||||
CONFIG_NETFILTER_XT_MATCH_SOCKET=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
|
||||
@@ -1140,6 +1140,7 @@ CONFIG_NET_SCH_CHOKE=m
|
||||
CONFIG_NET_SCH_QFQ=m
|
||||
CONFIG_NET_SCH_CODEL=m
|
||||
CONFIG_NET_SCH_FQ_CODEL=m
|
||||
CONFIG_NET_SCH_PIE=m
|
||||
CONFIG_NET_SCH_INGRESS=m
|
||||
CONFIG_NET_SCH_PLUG=m
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/x86 3.10.33 Kernel Configuration
|
||||
# Linux/x86 3.10.40-ipfire Kernel Configuration
|
||||
#
|
||||
# CONFIG_64BIT is not set
|
||||
CONFIG_X86_32=y
|
||||
@@ -594,29 +594,29 @@ CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
|
||||
# x86 CPU frequency scaling drivers
|
||||
#
|
||||
CONFIG_X86_INTEL_PSTATE=y
|
||||
CONFIG_X86_PCC_CPUFREQ=y
|
||||
CONFIG_X86_ACPI_CPUFREQ=y
|
||||
CONFIG_X86_PCC_CPUFREQ=m
|
||||
CONFIG_X86_ACPI_CPUFREQ=m
|
||||
# CONFIG_X86_ACPI_CPUFREQ_CPB is not set
|
||||
# CONFIG_X86_POWERNOW_K6 is not set
|
||||
CONFIG_X86_POWERNOW_K7=y
|
||||
CONFIG_X86_POWERNOW_K6=m
|
||||
CONFIG_X86_POWERNOW_K7=m
|
||||
CONFIG_X86_POWERNOW_K7_ACPI=y
|
||||
CONFIG_X86_POWERNOW_K8=y
|
||||
# CONFIG_X86_AMD_FREQ_SENSITIVITY is not set
|
||||
# CONFIG_X86_GX_SUSPMOD is not set
|
||||
CONFIG_X86_POWERNOW_K8=m
|
||||
CONFIG_X86_AMD_FREQ_SENSITIVITY=m
|
||||
CONFIG_X86_GX_SUSPMOD=m
|
||||
# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
|
||||
CONFIG_X86_SPEEDSTEP_ICH=y
|
||||
CONFIG_X86_SPEEDSTEP_SMI=y
|
||||
CONFIG_X86_P4_CLOCKMOD=y
|
||||
# CONFIG_X86_CPUFREQ_NFORCE2 is not set
|
||||
CONFIG_X86_LONGRUN=y
|
||||
# CONFIG_X86_LONGHAUL is not set
|
||||
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 is not set
|
||||
|
||||
#
|
||||
# shared options
|
||||
#
|
||||
CONFIG_X86_SPEEDSTEP_LIB=y
|
||||
# CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
|
||||
CONFIG_X86_SPEEDSTEP_LIB=m
|
||||
CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
|
||||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
|
||||
CONFIG_CPU_IDLE_GOV_LADDER=y
|
||||
@@ -925,6 +925,8 @@ CONFIG_NETFILTER_XT_MATCH_HELPER=m
|
||||
CONFIG_NETFILTER_XT_MATCH_HL=m
|
||||
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
|
||||
# CONFIG_NETFILTER_XT_MATCH_IPVS is not set
|
||||
CONFIG_NETFILTER_XT_MATCH_LAYER7=m
|
||||
# CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set
|
||||
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
|
||||
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_MAC=m
|
||||
@@ -943,8 +945,6 @@ CONFIG_NETFILTER_XT_MATCH_RECENT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_SCTP=m
|
||||
CONFIG_NETFILTER_XT_MATCH_SOCKET=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
|
||||
@@ -1152,6 +1152,7 @@ CONFIG_NET_SCH_CHOKE=m
|
||||
CONFIG_NET_SCH_QFQ=m
|
||||
CONFIG_NET_SCH_CODEL=m
|
||||
CONFIG_NET_SCH_FQ_CODEL=m
|
||||
CONFIG_NET_SCH_PIE=m
|
||||
CONFIG_NET_SCH_INGRESS=m
|
||||
CONFIG_NET_SCH_PLUG=m
|
||||
|
||||
|
||||
@@ -34,7 +34,6 @@ 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/icecream
|
||||
#etc/rc.d/init.d/imspector
|
||||
etc/rc.d/init.d/ipsec
|
||||
#etc/rc.d/init.d/keepalived
|
||||
|
||||
@@ -2243,6 +2243,7 @@ lib/modules/KVER-ipfire-kirkwood
|
||||
#lib/modules/KVER-ipfire-kirkwood/kernel/net/sched/sch_mqprio.ko
|
||||
#lib/modules/KVER-ipfire-kirkwood/kernel/net/sched/sch_multiq.ko
|
||||
#lib/modules/KVER-ipfire-kirkwood/kernel/net/sched/sch_netem.ko
|
||||
#lib/modules/KVER-ipfire-kirkwood/kernel/net/sched/sch_pie.ko
|
||||
#lib/modules/KVER-ipfire-kirkwood/kernel/net/sched/sch_plug.ko
|
||||
#lib/modules/KVER-ipfire-kirkwood/kernel/net/sched/sch_prio.ko
|
||||
#lib/modules/KVER-ipfire-kirkwood/kernel/net/sched/sch_qfq.ko
|
||||
|
||||
@@ -2195,6 +2195,7 @@ lib/modules/KVER-ipfire-multi
|
||||
#lib/modules/KVER-ipfire-multi/kernel/net/sched/sch_mqprio.ko
|
||||
#lib/modules/KVER-ipfire-multi/kernel/net/sched/sch_multiq.ko
|
||||
#lib/modules/KVER-ipfire-multi/kernel/net/sched/sch_netem.ko
|
||||
#lib/modules/KVER-ipfire-multi/kernel/net/sched/sch_pie.ko
|
||||
#lib/modules/KVER-ipfire-multi/kernel/net/sched/sch_plug.ko
|
||||
#lib/modules/KVER-ipfire-multi/kernel/net/sched/sch_prio.ko
|
||||
#lib/modules/KVER-ipfire-multi/kernel/net/sched/sch_qfq.ko
|
||||
|
||||
@@ -1804,6 +1804,7 @@ lib/modules/KVER-ipfire-rpi
|
||||
#lib/modules/KVER-ipfire-rpi/kernel/net/sched/sch_mqprio.ko
|
||||
#lib/modules/KVER-ipfire-rpi/kernel/net/sched/sch_multiq.ko
|
||||
#lib/modules/KVER-ipfire-rpi/kernel/net/sched/sch_netem.ko
|
||||
#lib/modules/KVER-ipfire-rpi/kernel/net/sched/sch_pie.ko
|
||||
#lib/modules/KVER-ipfire-rpi/kernel/net/sched/sch_plug.ko
|
||||
#lib/modules/KVER-ipfire-rpi/kernel/net/sched/sch_prio.ko
|
||||
#lib/modules/KVER-ipfire-rpi/kernel/net/sched/sch_qfq.ko
|
||||
|
||||
@@ -233,6 +233,7 @@ usr/sbin/rtcwake
|
||||
#usr/share/man/man1/ipcmk.1
|
||||
#usr/share/man/man1/ipcrm.1
|
||||
#usr/share/man/man1/ipcs.1
|
||||
#usr/share/man/man1/logger.1
|
||||
#usr/share/man/man1/look.1
|
||||
#usr/share/man/man1/lscpu.1
|
||||
#usr/share/man/man1/mcookie.1
|
||||
|
||||
9
config/rootfiles/common/hostname
Normal file
9
config/rootfiles/common/hostname
Normal file
@@ -0,0 +1,9 @@
|
||||
bin/dnsdomainname
|
||||
bin/domainname
|
||||
bin/hostname
|
||||
bin/nisdomainname
|
||||
bin/ypdomainname
|
||||
#usr/share/man/man1/dnsdomainname.1
|
||||
#usr/share/man/man1/domainname.1
|
||||
#usr/share/man/man1/nisdomainname.1
|
||||
#usr/share/man/man1/ypdomainname.1
|
||||
@@ -36,7 +36,6 @@ 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/icecream
|
||||
#etc/rc.d/init.d/imspector
|
||||
etc/rc.d/init.d/ipsec
|
||||
#etc/rc.d/init.d/keepalived
|
||||
|
||||
@@ -240,10 +240,25 @@ lib/modules/KVER-ipfire
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/clocksource/cs5535-clockevt.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/clocksource/scx200_hrt.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/acpi-cpufreq.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/amd_freq_sensitivity.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/cpufreq-nforce2.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/cpufreq_conservative.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/cpufreq_ondemand.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/cpufreq_powersave.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/cpufreq_stats.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/gx-suspmod.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/longhaul.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/longrun.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/mperf.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/p4-clockmod.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/pcc-cpufreq.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/powernow-k6.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/powernow-k7.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/powernow-k8.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/speedstep-ich.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/speedstep-lib.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/cpufreq/speedstep-smi.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/crypto
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/crypto/geode-aes.ko
|
||||
#lib/modules/KVER-ipfire/kernel/drivers/crypto/hifn_795x.ko
|
||||
@@ -2663,6 +2678,7 @@ lib/modules/KVER-ipfire
|
||||
#lib/modules/KVER-ipfire/kernel/net/sched/sch_mqprio.ko
|
||||
#lib/modules/KVER-ipfire/kernel/net/sched/sch_multiq.ko
|
||||
#lib/modules/KVER-ipfire/kernel/net/sched/sch_netem.ko
|
||||
#lib/modules/KVER-ipfire/kernel/net/sched/sch_pie.ko
|
||||
#lib/modules/KVER-ipfire/kernel/net/sched/sch_plug.ko
|
||||
#lib/modules/KVER-ipfire/kernel/net/sched/sch_prio.ko
|
||||
#lib/modules/KVER-ipfire/kernel/net/sched/sch_qfq.ko
|
||||
|
||||
@@ -234,6 +234,7 @@ usr/share/bash-completion
|
||||
#usr/share/man/man1/ipcmk.1
|
||||
#usr/share/man/man1/ipcrm.1
|
||||
#usr/share/man/man1/ipcs.1
|
||||
#usr/share/man/man1/logger.1
|
||||
#usr/share/man/man1/look.1
|
||||
#usr/share/man/man1/lscpu.1
|
||||
#usr/share/man/man1/mcookie.1
|
||||
@@ -303,4 +304,3 @@ usr/share/bash-completion
|
||||
#usr/share/man/man8/umount.8
|
||||
#usr/share/man/man8/wdctl.8
|
||||
#usr/share/man/man8/wipefs.8
|
||||
|
||||
|
||||
@@ -1,38 +0,0 @@
|
||||
bin/ping
|
||||
#usr/bin/ftp
|
||||
#usr/bin/rcp
|
||||
#usr/bin/rlogin
|
||||
#usr/bin/rsh
|
||||
#usr/bin/talk
|
||||
#usr/bin/tftp
|
||||
#usr/sbin/ftpd
|
||||
#usr/sbin/inetd
|
||||
#usr/sbin/rexecd
|
||||
#usr/sbin/rlogind
|
||||
#usr/sbin/rshd
|
||||
#usr/sbin/talkd
|
||||
#usr/sbin/tftpd
|
||||
#usr/sbin/uucpd
|
||||
#usr/share/info/inetutils.info
|
||||
#usr/share/info/inetutils.info-1
|
||||
#usr/share/info/inetutils.info-2
|
||||
#usr/share/info/inetutils.info-3
|
||||
#usr/share/man/man1/ftp.1
|
||||
#usr/share/man/man1/logger.1
|
||||
#usr/share/man/man1/rcp.1
|
||||
#usr/share/man/man1/rlogin.1
|
||||
#usr/share/man/man1/rsh.1
|
||||
#usr/share/man/man1/talk.1
|
||||
#usr/share/man/man1/telnet.1
|
||||
#usr/share/man/man1/tftp.1
|
||||
#usr/share/man/man5/syslog.conf.5
|
||||
#usr/share/man/man8/ftpd.8
|
||||
#usr/share/man/man8/inetd.8
|
||||
#usr/share/man/man8/ping.8
|
||||
#usr/share/man/man8/rexecd.8
|
||||
#usr/share/man/man8/rlogind.8
|
||||
#usr/share/man/man8/rshd.8
|
||||
#usr/share/man/man8/syslogd.8
|
||||
#usr/share/man/man8/talkd.8
|
||||
#usr/share/man/man8/telnetd.8
|
||||
#usr/share/man/man8/tftpd.8
|
||||
@@ -1 +1,2 @@
|
||||
bin/ping
|
||||
usr/bin/ping
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
bin/dnsdomainname
|
||||
bin/domainname
|
||||
bin/hostname
|
||||
bin/netstat
|
||||
#bin/nisdomainname
|
||||
#bin/ypdomainname
|
||||
sbin/arp
|
||||
sbin/ifconfig
|
||||
#sbin/ipmaddr
|
||||
@@ -14,10 +9,6 @@ sbin/nameif
|
||||
sbin/rarp
|
||||
sbin/route
|
||||
sbin/slattach
|
||||
#usr/share/man/man1/dnsdomainname.1
|
||||
#usr/share/man/man1/domainname.1
|
||||
#usr/share/man/man1/nisdomainname.1
|
||||
#usr/share/man/man1/ypdomainname.1
|
||||
#usr/share/man/man5/ethers.5
|
||||
#usr/share/man/man8/arp.8
|
||||
#usr/share/man/man8/ifconfig.8
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
etc/system-release
|
||||
etc/issue
|
||||
etc/rc.d/init.d/sshd
|
||||
srv/web/ipfire/cgi-bin/ddns.cgi
|
||||
srv/web/ipfire/cgi-bin/ids.cgi
|
||||
srv/web/ipfire/cgi-bin/logs.cgi/firewalllogcountry.dat
|
||||
@@ -8,6 +9,9 @@ srv/web/ipfire/cgi-bin/modem-status.cgi
|
||||
srv/web/ipfire/cgi-bin/ovpnmain.cgi
|
||||
srv/web/ipfire/cgi-bin/proxy.cgi
|
||||
srv/web/ipfire/html/themes/ipfire/include/functions.pl
|
||||
usr/bin/squidGuard
|
||||
usr/sbin/redirect_wrapper
|
||||
usr/sbin/updxlrator
|
||||
usr/local/bin/setddns.pl
|
||||
var/ipfire/langs
|
||||
var/ipfire/menu.d/20-status.menu
|
||||
|
||||
1
config/rootfiles/core/78/filelists/hostname
Symbolic link
1
config/rootfiles/core/78/filelists/hostname
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../common/hostname
|
||||
1
config/rootfiles/core/78/filelists/sudo
Symbolic link
1
config/rootfiles/core/78/filelists/sudo
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../common/sudo
|
||||
@@ -165,10 +165,17 @@ if [ $BOOTSPACE -lt 1000 ]; then
|
||||
esac
|
||||
fi
|
||||
|
||||
# Update ping
|
||||
rm -f /bin/ping
|
||||
ln -sf ../usr/bin/ping /bin/ping
|
||||
chmod 4755 /usr/bin/ping
|
||||
|
||||
# Update Language cache
|
||||
perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
|
||||
|
||||
# Add nobody to group dialout
|
||||
usermod -a -G dialout nobody
|
||||
|
||||
#
|
||||
# Start services
|
||||
#
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
etc/fcron.cyclic/cacti.cron
|
||||
etc/httpd/conf/vhosts.d/cacti.conf
|
||||
#etc/logrotate.d
|
||||
etc/logrotate.d/cacti
|
||||
#usr/share/cacti
|
||||
#usr/share/cacti/LICENSE
|
||||
#usr/share/cacti/README
|
||||
@@ -27,6 +29,7 @@ usr/share/cacti/cli/poller_graphs_reapply_names.php
|
||||
usr/share/cacti/cli/poller_output_empty.php
|
||||
usr/share/cacti/cli/poller_reindex_hosts.php
|
||||
usr/share/cacti/cli/rebuild_poller_cache.php
|
||||
usr/share/cacti/cli/reorder_data_query.php
|
||||
usr/share/cacti/cli/repair_database.php
|
||||
usr/share/cacti/cli/repair_templates.php
|
||||
usr/share/cacti/cli/structure_rra_paths.php
|
||||
@@ -191,12 +194,17 @@ usr/share/cacti/images/cacti_logo.gif
|
||||
usr/share/cacti/images/calendar.gif
|
||||
usr/share/cacti/images/delete_icon.gif
|
||||
usr/share/cacti/images/delete_icon_large.gif
|
||||
usr/share/cacti/images/disable_icon.png
|
||||
usr/share/cacti/images/enable_icon.png
|
||||
usr/share/cacti/images/enable_icon_disabled.png
|
||||
usr/share/cacti/images/favicon.ico
|
||||
usr/share/cacti/images/graph_page_top.gif
|
||||
usr/share/cacti/images/graph_properties.gif
|
||||
usr/share/cacti/images/graph_query.png
|
||||
usr/share/cacti/images/graph_zoom.gif
|
||||
usr/share/cacti/images/hide.gif
|
||||
usr/share/cacti/images/install_icon.png
|
||||
usr/share/cacti/images/install_icon_disabled.png
|
||||
usr/share/cacti/images/left_border.gif
|
||||
usr/share/cacti/images/menu_line.gif
|
||||
usr/share/cacti/images/menuarrow.gif
|
||||
@@ -222,6 +230,8 @@ usr/share/cacti/images/tab_mode_tree_down.gif
|
||||
usr/share/cacti/images/tab_settings.gif
|
||||
usr/share/cacti/images/tab_settings_down.gif
|
||||
usr/share/cacti/images/transparent_line.gif
|
||||
usr/share/cacti/images/uninstall_icon.gif
|
||||
usr/share/cacti/images/view_none.gif
|
||||
#usr/share/cacti/include
|
||||
usr/share/cacti/include/auth.php
|
||||
usr/share/cacti/include/bottom_footer.php
|
||||
@@ -231,10 +241,28 @@ usr/share/cacti/include/global_arrays.php
|
||||
usr/share/cacti/include/global_constants.php
|
||||
usr/share/cacti/include/global_form.php
|
||||
usr/share/cacti/include/global_settings.php
|
||||
#usr/share/cacti/include/jscalendar
|
||||
usr/share/cacti/include/js
|
||||
usr/share/cacti/include/js/jquery
|
||||
usr/share/cacti/include/js/jquery/colorpicker.js
|
||||
usr/share/cacti/include/js/jquery/jquery-ui.js
|
||||
usr/share/cacti/include/js/jquery/jquery.cookie.js
|
||||
usr/share/cacti/include/js/jquery/jquery.dd.js
|
||||
usr/share/cacti/include/js/jquery/jquery.dropdown.js
|
||||
usr/share/cacti/include/js/jquery/jquery.js
|
||||
usr/share/cacti/include/js/jquery/jquery.jstree.js
|
||||
usr/share/cacti/include/js/jquery/jquery.tablednd.js
|
||||
usr/share/cacti/include/js/jquery/jquery.timepicker.js
|
||||
usr/share/cacti/include/js/jquery/jquery.zoom.js
|
||||
usr/share/cacti/include/js/jquery/themes
|
||||
usr/share/cacti/include/js/jquery/themes/default
|
||||
usr/share/cacti/include/js/jquery/themes/default/d.gif
|
||||
usr/share/cacti/include/js/jquery/themes/default/d.png
|
||||
usr/share/cacti/include/js/jquery/themes/default/style.css
|
||||
usr/share/cacti/include/js/jquery/themes/default/throbber.gif
|
||||
usr/share/cacti/include/jscalendar
|
||||
usr/share/cacti/include/jscalendar/calendar-setup.js
|
||||
usr/share/cacti/include/jscalendar/calendar.js
|
||||
#usr/share/cacti/include/jscalendar/lang
|
||||
usr/share/cacti/include/jscalendar/lang
|
||||
usr/share/cacti/include/jscalendar/lang/calendar-af.js
|
||||
usr/share/cacti/include/jscalendar/lang/calendar-al.js
|
||||
usr/share/cacti/include/jscalendar/lang/calendar-bg.js
|
||||
@@ -280,20 +308,9 @@ usr/share/cacti/include/jscalendar/lang/calendar-zh.js
|
||||
usr/share/cacti/include/jscalendar/lang/cn_utf8.js
|
||||
usr/share/cacti/include/layout.js
|
||||
usr/share/cacti/include/main.css
|
||||
usr/share/cacti/include/plugins.php
|
||||
usr/share/cacti/include/top_graph_header.php
|
||||
usr/share/cacti/include/top_header.php
|
||||
#usr/share/cacti/include/treeview
|
||||
usr/share/cacti/include/treeview/ftiens4.js
|
||||
usr/share/cacti/include/treeview/ftiens4_export.js
|
||||
usr/share/cacti/include/treeview/ftv2blank.gif
|
||||
usr/share/cacti/include/treeview/ftv2lastnode.gif
|
||||
usr/share/cacti/include/treeview/ftv2mlastnode.gif
|
||||
usr/share/cacti/include/treeview/ftv2mnode.gif
|
||||
usr/share/cacti/include/treeview/ftv2node.gif
|
||||
usr/share/cacti/include/treeview/ftv2plastnode.gif
|
||||
usr/share/cacti/include/treeview/ftv2pnode.gif
|
||||
usr/share/cacti/include/treeview/ftv2vertline.gif
|
||||
usr/share/cacti/include/treeview/ua.js
|
||||
usr/share/cacti/include/zoom.js
|
||||
usr/share/cacti/index.php
|
||||
#usr/share/cacti/install
|
||||
@@ -318,6 +335,10 @@ usr/share/cacti/install/0_8_7d_to_0_8_7e.php
|
||||
usr/share/cacti/install/0_8_7e_to_0_8_7f.php
|
||||
usr/share/cacti/install/0_8_7f_to_0_8_7g.php
|
||||
usr/share/cacti/install/0_8_7g_to_0_8_7h.php
|
||||
usr/share/cacti/install/0_8_7h_to_0_8_7i.php
|
||||
usr/share/cacti/install/0_8_7i_to_0_8_8.php
|
||||
usr/share/cacti/install/0_8_8_to_0_8_8a.php
|
||||
usr/share/cacti/install/0_8_8_to_0_8_8b.php
|
||||
usr/share/cacti/install/0_8_to_0_8_1.php
|
||||
usr/share/cacti/install/index.php
|
||||
usr/share/cacti/install/install_finish.gif
|
||||
@@ -338,7 +359,7 @@ usr/share/cacti/lib/adodb/adodb-php4.inc.php
|
||||
usr/share/cacti/lib/adodb/adodb-time.inc.php
|
||||
usr/share/cacti/lib/adodb/adodb-xmlschema.inc.php
|
||||
usr/share/cacti/lib/adodb/adodb.inc.php
|
||||
#usr/share/cacti/lib/adodb/datadict
|
||||
usr/share/cacti/lib/adodb/datadict
|
||||
usr/share/cacti/lib/adodb/datadict/datadict-access.inc.php
|
||||
usr/share/cacti/lib/adodb/datadict/datadict-db2.inc.php
|
||||
usr/share/cacti/lib/adodb/datadict/datadict-firebird.inc.php
|
||||
@@ -351,7 +372,7 @@ usr/share/cacti/lib/adodb/datadict/datadict-oci8.inc.php
|
||||
usr/share/cacti/lib/adodb/datadict/datadict-postgres.inc.php
|
||||
usr/share/cacti/lib/adodb/datadict/datadict-sapdb.inc.php
|
||||
usr/share/cacti/lib/adodb/datadict/datadict-sybase.inc.php
|
||||
#usr/share/cacti/lib/adodb/drivers
|
||||
usr/share/cacti/lib/adodb/drivers
|
||||
usr/share/cacti/lib/adodb/drivers/adodb-access.inc.php
|
||||
usr/share/cacti/lib/adodb/drivers/adodb-ado.inc.php
|
||||
usr/share/cacti/lib/adodb/drivers/adodb-ado5.inc.php
|
||||
@@ -392,7 +413,7 @@ usr/share/cacti/lib/adodb/drivers/adodb-sqlite.inc.php
|
||||
usr/share/cacti/lib/adodb/drivers/adodb-sqlitepo.inc.php
|
||||
usr/share/cacti/lib/adodb/drivers/adodb-sybase.inc.php
|
||||
usr/share/cacti/lib/adodb/drivers/adodb-vfp.inc.php
|
||||
#usr/share/cacti/lib/adodb/lang
|
||||
usr/share/cacti/lib/adodb/lang
|
||||
usr/share/cacti/lib/adodb/lang/adodb-ar.inc.php
|
||||
usr/share/cacti/lib/adodb/lang/adodb-bg.inc.php
|
||||
usr/share/cacti/lib/adodb/lang/adodb-bgutf8.inc.php
|
||||
@@ -437,6 +458,7 @@ usr/share/cacti/lib/html_validate.php
|
||||
usr/share/cacti/lib/import.php
|
||||
usr/share/cacti/lib/ldap.php
|
||||
usr/share/cacti/lib/ping.php
|
||||
usr/share/cacti/lib/plugins.php
|
||||
usr/share/cacti/lib/poller.php
|
||||
usr/share/cacti/lib/rrd.php
|
||||
usr/share/cacti/lib/snmp.php
|
||||
@@ -450,6 +472,9 @@ usr/share/cacti/lib/variables.php
|
||||
usr/share/cacti/lib/xml.php
|
||||
usr/share/cacti/log
|
||||
usr/share/cacti/logout.php
|
||||
usr/share/cacti/plugins
|
||||
usr/share/cacti/plugins.php
|
||||
usr/share/cacti/plugins/index.php
|
||||
usr/share/cacti/poller.php
|
||||
usr/share/cacti/poller_commands.php
|
||||
usr/share/cacti/poller_export.php
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
#opt/icecream
|
||||
#opt/icecream/bin
|
||||
#opt/icecream/bin/c++
|
||||
#opt/icecream/bin/cc
|
||||
#opt/icecream/bin/g++
|
||||
#opt/icecream/bin/gcc
|
||||
#opt/icecream/bin/icecc
|
||||
#opt/icecream/bin/icerun
|
||||
#opt/icecream/include
|
||||
#opt/icecream/include/icecc
|
||||
#opt/icecream/include/icecc/comm.h
|
||||
#opt/icecream/include/icecc/job.h
|
||||
#opt/icecream/lib
|
||||
#opt/icecream/lib/icecc
|
||||
#opt/icecream/lib/icecc/icecc-create-env
|
||||
#opt/icecream/lib/libicecc.a
|
||||
#opt/icecream/lib/libicecc.la
|
||||
#opt/icecream/lib/pkgconfig
|
||||
#opt/icecream/lib/pkgconfig/icecc.pc
|
||||
#opt/icecream/sbin
|
||||
opt/icecream/sbin/icecc-scheduler
|
||||
opt/icecream/sbin/iceccd
|
||||
etc/rc.d/init.d/icecream
|
||||
2370
config/rootfiles/packages/icinga
Normal file
2370
config/rootfiles/packages/icinga
Normal file
File diff suppressed because it is too large
Load Diff
@@ -238,10 +238,25 @@ lib/modules/KVER-ipfire-pae
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/clocksource
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/clocksource/cs5535-clockevt.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/acpi-cpufreq.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/amd_freq_sensitivity.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/cpufreq-nforce2.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/cpufreq_conservative.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/cpufreq_ondemand.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/cpufreq_powersave.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/cpufreq_stats.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/gx-suspmod.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/longhaul.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/longrun.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/mperf.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/p4-clockmod.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/pcc-cpufreq.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/powernow-k6.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/powernow-k7.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/powernow-k8.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/speedstep-ich.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/speedstep-lib.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/cpufreq/speedstep-smi.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/crypto
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/crypto/geode-aes.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/drivers/crypto/padlock-aes.ko
|
||||
@@ -2675,6 +2690,7 @@ lib/modules/KVER-ipfire-pae
|
||||
#lib/modules/KVER-ipfire-pae/kernel/net/sched/sch_mqprio.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/net/sched/sch_multiq.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/net/sched/sch_netem.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/net/sched/sch_pie.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/net/sched/sch_plug.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/net/sched/sch_prio.ko
|
||||
#lib/modules/KVER-ipfire-pae/kernel/net/sched/sch_qfq.ko
|
||||
|
||||
@@ -34,6 +34,7 @@ usr/lib/nagios
|
||||
#usr/lib/nagios/check_file_age
|
||||
#usr/lib/nagios/check_flexlm
|
||||
#usr/lib/nagios/check_ftp
|
||||
#usr/lib/nagios/check_hpjd
|
||||
#usr/lib/nagios/check_http
|
||||
#usr/lib/nagios/check_icmp
|
||||
#usr/lib/nagios/check_ide_smart
|
||||
@@ -69,6 +70,7 @@ usr/lib/nagios
|
||||
#usr/lib/nagios/check_sensors
|
||||
#usr/lib/nagios/check_simap
|
||||
#usr/lib/nagios/check_smtp
|
||||
#usr/lib/nagios/check_snmp
|
||||
#usr/lib/nagios/check_spop
|
||||
#usr/lib/nagios/check_ssh
|
||||
#usr/lib/nagios/check_ssmtp
|
||||
|
||||
@@ -36,6 +36,7 @@ etc/sane.d/hp5400.conf
|
||||
etc/sane.d/hs2p.conf
|
||||
etc/sane.d/ibm.conf
|
||||
etc/sane.d/kodak.conf
|
||||
etc/sane.d/kodakaio.conf
|
||||
etc/sane.d/leo.conf
|
||||
etc/sane.d/lexmark.conf
|
||||
etc/sane.d/ma1509.conf
|
||||
@@ -79,427 +80,440 @@ usr/bin/gamma4scanimage
|
||||
usr/bin/sane-config
|
||||
usr/bin/sane-find-scanner
|
||||
usr/bin/scanimage
|
||||
usr/doc/sane-1.0.22
|
||||
usr/doc/sane-1.0.22/AUTHORS
|
||||
usr/doc/sane-1.0.22/COPYING
|
||||
usr/doc/sane-1.0.22/ChangeLog
|
||||
usr/doc/sane-1.0.22/LICENSE
|
||||
usr/doc/sane-1.0.22/NEWS
|
||||
usr/doc/sane-1.0.22/PROBLEMS
|
||||
usr/doc/sane-1.0.22/PROJECTS
|
||||
usr/doc/sane-1.0.22/README
|
||||
#usr/doc/sane-1.0.22/README.aix
|
||||
#usr/doc/sane-1.0.22/README.beos
|
||||
#usr/doc/sane-1.0.22/README.darwin
|
||||
usr/doc/sane-1.0.22/README.djpeg
|
||||
#usr/doc/sane-1.0.22/README.freebsd
|
||||
#usr/doc/sane-1.0.22/README.hp-ux
|
||||
usr/doc/sane-1.0.22/README.linux
|
||||
#usr/doc/sane-1.0.22/README.netbsd
|
||||
#usr/doc/sane-1.0.22/README.openbsd
|
||||
#usr/doc/sane-1.0.22/README.os2
|
||||
#usr/doc/sane-1.0.22/README.solaris
|
||||
#usr/doc/sane-1.0.22/README.unixware2
|
||||
#usr/doc/sane-1.0.22/README.unixware7
|
||||
#usr/doc/sane-1.0.22/README.windows
|
||||
#usr/doc/sane-1.0.22/README.zeta
|
||||
#usr/doc/sane-1.0.22/backend-writing.txt
|
||||
usr/doc/sane-1.0.22/canon
|
||||
usr/doc/sane-1.0.22/canon/canon.changes
|
||||
usr/doc/sane-1.0.22/canon/canon.install2700F.txt
|
||||
#usr/doc/sane-1.0.22/gt68xx
|
||||
usr/doc/sane-1.0.22/gt68xx/gt68xx.CHANGES
|
||||
usr/doc/sane-1.0.22/gt68xx/gt68xx.TODO
|
||||
#usr/doc/sane-1.0.22/leo
|
||||
usr/doc/sane-1.0.22/leo/leo.txt
|
||||
#usr/doc/sane-1.0.22/matsushita
|
||||
usr/doc/sane-1.0.22/matsushita/matsushita.txt
|
||||
#usr/doc/sane-1.0.22/mustek
|
||||
usr/doc/sane-1.0.22/mustek/mustek.CHANGES
|
||||
#usr/doc/sane-1.0.22/mustek_usb
|
||||
usr/doc/sane-1.0.22/mustek_usb/mustek_usb.CHANGES
|
||||
usr/doc/sane-1.0.22/mustek_usb/mustek_usb.TODO
|
||||
#usr/doc/sane-1.0.22/mustek_usb2
|
||||
usr/doc/sane-1.0.22/mustek_usb2/mustek_usb2.CHANGES
|
||||
usr/doc/sane-1.0.22/mustek_usb2/mustek_usb2.TODO
|
||||
#usr/doc/sane-1.0.22/niash
|
||||
usr/doc/sane-1.0.22/niash/niash.TODO
|
||||
#usr/doc/sane-1.0.22/plustek
|
||||
usr/doc/sane-1.0.22/plustek/FAQ
|
||||
usr/doc/sane-1.0.22/plustek/MakeModule.sh
|
||||
#usr/doc/sane-1.0.22/plustek/Makefile.kernel24
|
||||
usr/doc/sane-1.0.22/plustek/Makefile.kernel26
|
||||
usr/doc/sane-1.0.22/plustek/Plustek-PARPORT-TODO.txt
|
||||
usr/doc/sane-1.0.22/plustek/Plustek-PARPORT.changes
|
||||
usr/doc/sane-1.0.22/plustek/Plustek-PARPORT.txt
|
||||
usr/doc/sane-1.0.22/plustek/Plustek-USB-TODO.txt
|
||||
usr/doc/sane-1.0.22/plustek/Plustek-USB.changes
|
||||
usr/doc/sane-1.0.22/plustek/Plustek-USB.txt
|
||||
usr/doc/sane-1.0.22/sane-backends-external.html
|
||||
usr/doc/sane-1.0.22/sane-backends.html
|
||||
usr/doc/sane-1.0.22/sane-mfgs-external.html
|
||||
usr/doc/sane-1.0.22/sane-mfgs.html
|
||||
#usr/doc/sane-1.0.22/sceptre
|
||||
usr/doc/sane-1.0.22/sceptre/s1200.txt
|
||||
#usr/doc/sane-1.0.22/teco
|
||||
usr/doc/sane-1.0.22/teco/teco1.txt
|
||||
usr/doc/sane-1.0.22/teco/teco2.txt
|
||||
usr/doc/sane-1.0.22/teco/teco3.txt
|
||||
#usr/doc/sane-1.0.22/u12
|
||||
usr/doc/sane-1.0.22/u12/U12.changes
|
||||
usr/doc/sane-1.0.22/u12/U12.todo
|
||||
#usr/doc/sane-1.0.22/umax
|
||||
usr/doc/sane-1.0.22/umax/negative-types.txt
|
||||
usr/doc/sane-1.0.22/umax/sane-logo.jpg
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-advanced-options-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-advanced.jpg
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-astra-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-config-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-histogram.jpg
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-mirage-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-not-listed-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-others-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-parport-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-powerlook-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-scanner-clones-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-speed-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-standard-options-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-standard.jpg
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-text.jpg
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-text2.jpg
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-text4.jpg
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-uc-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax-vista-doc.html
|
||||
usr/doc/sane-1.0.22/umax/sane-umax.jpg
|
||||
usr/doc/sane-1.0.22/umax/umax.BUGS
|
||||
usr/doc/sane-1.0.22/umax/umax.CHANGES
|
||||
usr/doc/sane-1.0.22/umax/umax.FAQ
|
||||
usr/doc/sane-1.0.22/umax/umax.TODO
|
||||
usr/doc/sane-1.0.24
|
||||
#usr/doc/sane-1.0.24/AUTHORS
|
||||
#usr/doc/sane-1.0.24/COPYING
|
||||
#usr/doc/sane-1.0.24/ChangeLog
|
||||
#usr/doc/sane-1.0.24/LICENSE
|
||||
#usr/doc/sane-1.0.24/NEWS
|
||||
#usr/doc/sane-1.0.24/PROBLEMS
|
||||
#usr/doc/sane-1.0.24/PROJECTS
|
||||
#usr/doc/sane-1.0.24/README
|
||||
#usr/doc/sane-1.0.24/README.aix
|
||||
#usr/doc/sane-1.0.24/README.beos
|
||||
#usr/doc/sane-1.0.24/README.darwin
|
||||
#usr/doc/sane-1.0.24/README.djpeg
|
||||
#usr/doc/sane-1.0.24/README.freebsd
|
||||
#usr/doc/sane-1.0.24/README.hp-ux
|
||||
#usr/doc/sane-1.0.24/README.linux
|
||||
#usr/doc/sane-1.0.24/README.netbsd
|
||||
#usr/doc/sane-1.0.24/README.openbsd
|
||||
#usr/doc/sane-1.0.24/README.os2
|
||||
#usr/doc/sane-1.0.24/README.solaris
|
||||
#usr/doc/sane-1.0.24/README.unixware2
|
||||
#usr/doc/sane-1.0.24/README.unixware7
|
||||
#usr/doc/sane-1.0.24/README.windows
|
||||
#usr/doc/sane-1.0.24/README.zeta
|
||||
#usr/doc/sane-1.0.24/backend-writing.txt
|
||||
#usr/doc/sane-1.0.24/canon
|
||||
#usr/doc/sane-1.0.24/canon/canon.changes
|
||||
#usr/doc/sane-1.0.24/canon/canon.install2700F.txt
|
||||
#usr/doc/sane-1.0.24/gt68xx
|
||||
#usr/doc/sane-1.0.24/gt68xx/gt68xx.CHANGES
|
||||
#usr/doc/sane-1.0.24/gt68xx/gt68xx.TODO
|
||||
#usr/doc/sane-1.0.24/leo
|
||||
#usr/doc/sane-1.0.24/leo/leo.txt
|
||||
#usr/doc/sane-1.0.24/matsushita
|
||||
#usr/doc/sane-1.0.24/matsushita/matsushita.txt
|
||||
#usr/doc/sane-1.0.24/mustek
|
||||
#usr/doc/sane-1.0.24/mustek/mustek.CHANGES
|
||||
#usr/doc/sane-1.0.24/mustek_usb
|
||||
#usr/doc/sane-1.0.24/mustek_usb/mustek_usb.CHANGES
|
||||
#usr/doc/sane-1.0.24/mustek_usb/mustek_usb.TODO
|
||||
#usr/doc/sane-1.0.24/mustek_usb2
|
||||
#usr/doc/sane-1.0.24/mustek_usb2/mustek_usb2.CHANGES
|
||||
#usr/doc/sane-1.0.24/mustek_usb2/mustek_usb2.TODO
|
||||
#usr/doc/sane-1.0.24/niash
|
||||
#usr/doc/sane-1.0.24/niash/niash.TODO
|
||||
#usr/doc/sane-1.0.24/plustek
|
||||
#usr/doc/sane-1.0.24/plustek/FAQ
|
||||
#usr/doc/sane-1.0.24/plustek/MakeModule.sh
|
||||
#usr/doc/sane-1.0.24/plustek/Makefile.kernel24
|
||||
#usr/doc/sane-1.0.24/plustek/Makefile.kernel26
|
||||
#usr/doc/sane-1.0.24/plustek/Plustek-PARPORT-TODO.txt
|
||||
#usr/doc/sane-1.0.24/plustek/Plustek-PARPORT.changes
|
||||
#usr/doc/sane-1.0.24/plustek/Plustek-PARPORT.txt
|
||||
#usr/doc/sane-1.0.24/plustek/Plustek-USB-TODO.txt
|
||||
#usr/doc/sane-1.0.24/plustek/Plustek-USB.changes
|
||||
#usr/doc/sane-1.0.24/plustek/Plustek-USB.txt
|
||||
#usr/doc/sane-1.0.24/sane-backends-external.html
|
||||
#usr/doc/sane-1.0.24/sane-backends.html
|
||||
#usr/doc/sane-1.0.24/sane-mfgs-external.html
|
||||
#usr/doc/sane-1.0.24/sane-mfgs.html
|
||||
#usr/doc/sane-1.0.24/sceptre
|
||||
#usr/doc/sane-1.0.24/sceptre/s1200.txt
|
||||
#usr/doc/sane-1.0.24/teco
|
||||
#usr/doc/sane-1.0.24/teco/teco1.txt
|
||||
#usr/doc/sane-1.0.24/teco/teco2.txt
|
||||
#usr/doc/sane-1.0.24/teco/teco3.txt
|
||||
#usr/doc/sane-1.0.24/u12
|
||||
#usr/doc/sane-1.0.24/u12/U12.changes
|
||||
#usr/doc/sane-1.0.24/u12/U12.todo
|
||||
#usr/doc/sane-1.0.24/umax
|
||||
#usr/doc/sane-1.0.24/umax/negative-types.txt
|
||||
#usr/doc/sane-1.0.24/umax/sane-logo.jpg
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-advanced-options-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-advanced.jpg
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-astra-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-config-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-histogram.jpg
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-mirage-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-not-listed-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-others-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-parport-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-powerlook-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-scanner-clones-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-speed-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-standard-options-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-standard.jpg
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-text.jpg
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-text2.jpg
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-text4.jpg
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-uc-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax-vista-doc.html
|
||||
#usr/doc/sane-1.0.24/umax/sane-umax.jpg
|
||||
#usr/doc/sane-1.0.24/umax/umax.BUGS
|
||||
#usr/doc/sane-1.0.24/umax/umax.CHANGES
|
||||
#usr/doc/sane-1.0.24/umax/umax.FAQ
|
||||
#usr/doc/sane-1.0.24/umax/umax.TODO
|
||||
#usr/include/sane
|
||||
usr/include/sane/sane.h
|
||||
usr/include/sane/saneopts.h
|
||||
#usr/lib/libsane.la
|
||||
usr/lib/libsane.so
|
||||
usr/lib/libsane.so.1
|
||||
usr/lib/libsane.so.1.0.22
|
||||
usr/lib/libsane.so.1.0.24
|
||||
#usr/lib/pkgconfig/sane-backends.pc
|
||||
#usr/lib/sane
|
||||
#usr/lib/sane/libsane-abaton.la
|
||||
usr/lib/sane/libsane-abaton.so
|
||||
usr/lib/sane/libsane-abaton.so.1
|
||||
usr/lib/sane/libsane-abaton.so.1.0.22
|
||||
usr/lib/sane/libsane-abaton.so.1.0.24
|
||||
#usr/lib/sane/libsane-agfafocus.la
|
||||
usr/lib/sane/libsane-agfafocus.so
|
||||
usr/lib/sane/libsane-agfafocus.so.1
|
||||
usr/lib/sane/libsane-agfafocus.so.1.0.22
|
||||
usr/lib/sane/libsane-agfafocus.so.1.0.24
|
||||
#usr/lib/sane/libsane-apple.la
|
||||
usr/lib/sane/libsane-apple.so
|
||||
usr/lib/sane/libsane-apple.so.1
|
||||
usr/lib/sane/libsane-apple.so.1.0.22
|
||||
usr/lib/sane/libsane-apple.so.1.0.24
|
||||
#usr/lib/sane/libsane-artec.la
|
||||
usr/lib/sane/libsane-artec.so
|
||||
usr/lib/sane/libsane-artec.so.1
|
||||
usr/lib/sane/libsane-artec.so.1.0.22
|
||||
usr/lib/sane/libsane-artec.so.1.0.24
|
||||
#usr/lib/sane/libsane-artec_eplus48u.la
|
||||
usr/lib/sane/libsane-artec_eplus48u.so
|
||||
usr/lib/sane/libsane-artec_eplus48u.so.1
|
||||
usr/lib/sane/libsane-artec_eplus48u.so.1.0.22
|
||||
usr/lib/sane/libsane-artec_eplus48u.so.1.0.24
|
||||
#usr/lib/sane/libsane-as6e.la
|
||||
usr/lib/sane/libsane-as6e.so
|
||||
usr/lib/sane/libsane-as6e.so.1
|
||||
usr/lib/sane/libsane-as6e.so.1.0.22
|
||||
usr/lib/sane/libsane-as6e.so.1.0.24
|
||||
#usr/lib/sane/libsane-avision.la
|
||||
usr/lib/sane/libsane-avision.so
|
||||
usr/lib/sane/libsane-avision.so.1
|
||||
usr/lib/sane/libsane-avision.so.1.0.22
|
||||
usr/lib/sane/libsane-avision.so.1.0.24
|
||||
#usr/lib/sane/libsane-bh.la
|
||||
usr/lib/sane/libsane-bh.so
|
||||
usr/lib/sane/libsane-bh.so.1
|
||||
usr/lib/sane/libsane-bh.so.1.0.22
|
||||
usr/lib/sane/libsane-bh.so.1.0.24
|
||||
#usr/lib/sane/libsane-canon.la
|
||||
usr/lib/sane/libsane-canon.so
|
||||
usr/lib/sane/libsane-canon.so.1
|
||||
usr/lib/sane/libsane-canon.so.1.0.22
|
||||
usr/lib/sane/libsane-canon.so.1.0.24
|
||||
#usr/lib/sane/libsane-canon630u.la
|
||||
usr/lib/sane/libsane-canon630u.so
|
||||
usr/lib/sane/libsane-canon630u.so.1
|
||||
usr/lib/sane/libsane-canon630u.so.1.0.22
|
||||
usr/lib/sane/libsane-canon630u.so.1.0.24
|
||||
#usr/lib/sane/libsane-canon_dr.la
|
||||
usr/lib/sane/libsane-canon_dr.so
|
||||
usr/lib/sane/libsane-canon_dr.so.1
|
||||
usr/lib/sane/libsane-canon_dr.so.1.0.22
|
||||
usr/lib/sane/libsane-canon_dr.so.1.0.24
|
||||
#usr/lib/sane/libsane-cardscan.la
|
||||
usr/lib/sane/libsane-cardscan.so
|
||||
usr/lib/sane/libsane-cardscan.so.1
|
||||
usr/lib/sane/libsane-cardscan.so.1.0.22
|
||||
usr/lib/sane/libsane-cardscan.so.1.0.24
|
||||
#usr/lib/sane/libsane-coolscan.la
|
||||
usr/lib/sane/libsane-coolscan.so
|
||||
usr/lib/sane/libsane-coolscan.so.1
|
||||
usr/lib/sane/libsane-coolscan.so.1.0.22
|
||||
usr/lib/sane/libsane-coolscan.so.1.0.24
|
||||
#usr/lib/sane/libsane-coolscan2.la
|
||||
usr/lib/sane/libsane-coolscan2.so
|
||||
usr/lib/sane/libsane-coolscan2.so.1
|
||||
usr/lib/sane/libsane-coolscan2.so.1.0.22
|
||||
usr/lib/sane/libsane-coolscan2.so.1.0.24
|
||||
#usr/lib/sane/libsane-coolscan3.la
|
||||
usr/lib/sane/libsane-coolscan3.so
|
||||
usr/lib/sane/libsane-coolscan3.so.1
|
||||
usr/lib/sane/libsane-coolscan3.so.1.0.22
|
||||
usr/lib/sane/libsane-coolscan3.so.1.0.24
|
||||
#usr/lib/sane/libsane-dc210.la
|
||||
usr/lib/sane/libsane-dc210.so
|
||||
usr/lib/sane/libsane-dc210.so.1
|
||||
usr/lib/sane/libsane-dc210.so.1.0.22
|
||||
usr/lib/sane/libsane-dc210.so.1.0.24
|
||||
#usr/lib/sane/libsane-dc240.la
|
||||
usr/lib/sane/libsane-dc240.so
|
||||
usr/lib/sane/libsane-dc240.so.1
|
||||
usr/lib/sane/libsane-dc240.so.1.0.22
|
||||
usr/lib/sane/libsane-dc240.so.1.0.24
|
||||
#usr/lib/sane/libsane-dc25.la
|
||||
usr/lib/sane/libsane-dc25.so
|
||||
usr/lib/sane/libsane-dc25.so.1
|
||||
usr/lib/sane/libsane-dc25.so.1.0.22
|
||||
usr/lib/sane/libsane-dc25.so.1.0.24
|
||||
#usr/lib/sane/libsane-dell1600n_net.la
|
||||
usr/lib/sane/libsane-dell1600n_net.so
|
||||
usr/lib/sane/libsane-dell1600n_net.so.1
|
||||
usr/lib/sane/libsane-dell1600n_net.so.1.0.22
|
||||
usr/lib/sane/libsane-dell1600n_net.so.1.0.24
|
||||
#usr/lib/sane/libsane-dll.la
|
||||
usr/lib/sane/libsane-dll.so
|
||||
usr/lib/sane/libsane-dll.so.1
|
||||
usr/lib/sane/libsane-dll.so.1.0.22
|
||||
usr/lib/sane/libsane-dll.so.1.0.24
|
||||
#usr/lib/sane/libsane-dmc.la
|
||||
usr/lib/sane/libsane-dmc.so
|
||||
usr/lib/sane/libsane-dmc.so.1
|
||||
usr/lib/sane/libsane-dmc.so.1.0.22
|
||||
usr/lib/sane/libsane-dmc.so.1.0.24
|
||||
#usr/lib/sane/libsane-epjitsu.la
|
||||
usr/lib/sane/libsane-epjitsu.so
|
||||
usr/lib/sane/libsane-epjitsu.so.1
|
||||
usr/lib/sane/libsane-epjitsu.so.1.0.22
|
||||
usr/lib/sane/libsane-epjitsu.so.1.0.24
|
||||
#usr/lib/sane/libsane-epson.la
|
||||
usr/lib/sane/libsane-epson.so
|
||||
usr/lib/sane/libsane-epson.so.1
|
||||
usr/lib/sane/libsane-epson.so.1.0.22
|
||||
usr/lib/sane/libsane-epson.so.1.0.24
|
||||
#usr/lib/sane/libsane-epson2.la
|
||||
usr/lib/sane/libsane-epson2.so
|
||||
usr/lib/sane/libsane-epson2.so.1
|
||||
usr/lib/sane/libsane-epson2.so.1.0.22
|
||||
usr/lib/sane/libsane-epson2.so.1.0.24
|
||||
#usr/lib/sane/libsane-fujitsu.la
|
||||
usr/lib/sane/libsane-fujitsu.so
|
||||
usr/lib/sane/libsane-fujitsu.so.1
|
||||
usr/lib/sane/libsane-fujitsu.so.1.0.22
|
||||
usr/lib/sane/libsane-fujitsu.so.1.0.24
|
||||
#usr/lib/sane/libsane-genesys.la
|
||||
usr/lib/sane/libsane-genesys.so
|
||||
usr/lib/sane/libsane-genesys.so.1
|
||||
usr/lib/sane/libsane-genesys.so.1.0.22
|
||||
usr/lib/sane/libsane-genesys.so.1.0.24
|
||||
#usr/lib/sane/libsane-gt68xx.la
|
||||
usr/lib/sane/libsane-gt68xx.so
|
||||
usr/lib/sane/libsane-gt68xx.so.1
|
||||
usr/lib/sane/libsane-gt68xx.so.1.0.22
|
||||
usr/lib/sane/libsane-gt68xx.so.1.0.24
|
||||
#usr/lib/sane/libsane-hp.la
|
||||
usr/lib/sane/libsane-hp.so
|
||||
usr/lib/sane/libsane-hp.so.1
|
||||
usr/lib/sane/libsane-hp.so.1.0.22
|
||||
usr/lib/sane/libsane-hp.so.1.0.24
|
||||
#usr/lib/sane/libsane-hp3500.la
|
||||
usr/lib/sane/libsane-hp3500.so
|
||||
usr/lib/sane/libsane-hp3500.so.1
|
||||
usr/lib/sane/libsane-hp3500.so.1.0.22
|
||||
usr/lib/sane/libsane-hp3500.so.1.0.24
|
||||
#usr/lib/sane/libsane-hp3900.la
|
||||
usr/lib/sane/libsane-hp3900.so
|
||||
usr/lib/sane/libsane-hp3900.so.1
|
||||
usr/lib/sane/libsane-hp3900.so.1.0.22
|
||||
usr/lib/sane/libsane-hp3900.so.1.0.24
|
||||
#usr/lib/sane/libsane-hp4200.la
|
||||
usr/lib/sane/libsane-hp4200.so
|
||||
usr/lib/sane/libsane-hp4200.so.1
|
||||
usr/lib/sane/libsane-hp4200.so.1.0.22
|
||||
usr/lib/sane/libsane-hp4200.so.1.0.24
|
||||
#usr/lib/sane/libsane-hp5400.la
|
||||
usr/lib/sane/libsane-hp5400.so
|
||||
usr/lib/sane/libsane-hp5400.so.1
|
||||
usr/lib/sane/libsane-hp5400.so.1.0.22
|
||||
usr/lib/sane/libsane-hp5400.so.1.0.24
|
||||
#usr/lib/sane/libsane-hp5590.la
|
||||
usr/lib/sane/libsane-hp5590.so
|
||||
usr/lib/sane/libsane-hp5590.so.1
|
||||
usr/lib/sane/libsane-hp5590.so.1.0.22
|
||||
usr/lib/sane/libsane-hp5590.so.1.0.24
|
||||
#usr/lib/sane/libsane-hpljm1005.la
|
||||
usr/lib/sane/libsane-hpljm1005.so
|
||||
usr/lib/sane/libsane-hpljm1005.so.1
|
||||
usr/lib/sane/libsane-hpljm1005.so.1.0.22
|
||||
usr/lib/sane/libsane-hpljm1005.so.1.0.24
|
||||
#usr/lib/sane/libsane-hs2p.la
|
||||
usr/lib/sane/libsane-hs2p.so
|
||||
usr/lib/sane/libsane-hs2p.so.1
|
||||
usr/lib/sane/libsane-hs2p.so.1.0.22
|
||||
usr/lib/sane/libsane-hs2p.so.1.0.24
|
||||
#usr/lib/sane/libsane-ibm.la
|
||||
usr/lib/sane/libsane-ibm.so
|
||||
usr/lib/sane/libsane-ibm.so.1
|
||||
usr/lib/sane/libsane-ibm.so.1.0.22
|
||||
usr/lib/sane/libsane-ibm.so.1.0.24
|
||||
#usr/lib/sane/libsane-kodak.la
|
||||
usr/lib/sane/libsane-kodak.so
|
||||
usr/lib/sane/libsane-kodak.so.1
|
||||
usr/lib/sane/libsane-kodak.so.1.0.22
|
||||
usr/lib/sane/libsane-kodak.so.1.0.24
|
||||
#usr/lib/sane/libsane-kodakaio.la
|
||||
usr/lib/sane/libsane-kodakaio.so
|
||||
usr/lib/sane/libsane-kodakaio.so.1
|
||||
usr/lib/sane/libsane-kodakaio.so.1.0.24
|
||||
#usr/lib/sane/libsane-kvs1025.la
|
||||
usr/lib/sane/libsane-kvs1025.so
|
||||
usr/lib/sane/libsane-kvs1025.so.1
|
||||
usr/lib/sane/libsane-kvs1025.so.1.0.22
|
||||
usr/lib/sane/libsane-kvs1025.so.1.0.24
|
||||
#usr/lib/sane/libsane-kvs20xx.la
|
||||
usr/lib/sane/libsane-kvs20xx.so
|
||||
usr/lib/sane/libsane-kvs20xx.so.1
|
||||
usr/lib/sane/libsane-kvs20xx.so.1.0.22
|
||||
usr/lib/sane/libsane-kvs20xx.so.1.0.24
|
||||
#usr/lib/sane/libsane-kvs40xx.la
|
||||
usr/lib/sane/libsane-kvs40xx.so
|
||||
usr/lib/sane/libsane-kvs40xx.so.1
|
||||
usr/lib/sane/libsane-kvs40xx.so.1.0.24
|
||||
#usr/lib/sane/libsane-leo.la
|
||||
usr/lib/sane/libsane-leo.so
|
||||
usr/lib/sane/libsane-leo.so.1
|
||||
usr/lib/sane/libsane-leo.so.1.0.22
|
||||
usr/lib/sane/libsane-leo.so.1.0.24
|
||||
#usr/lib/sane/libsane-lexmark.la
|
||||
usr/lib/sane/libsane-lexmark.so
|
||||
usr/lib/sane/libsane-lexmark.so.1
|
||||
usr/lib/sane/libsane-lexmark.so.1.0.22
|
||||
usr/lib/sane/libsane-lexmark.so.1.0.24
|
||||
#usr/lib/sane/libsane-ma1509.la
|
||||
usr/lib/sane/libsane-ma1509.so
|
||||
usr/lib/sane/libsane-ma1509.so.1
|
||||
usr/lib/sane/libsane-ma1509.so.1.0.22
|
||||
usr/lib/sane/libsane-ma1509.so.1.0.24
|
||||
#usr/lib/sane/libsane-magicolor.la
|
||||
usr/lib/sane/libsane-magicolor.so
|
||||
usr/lib/sane/libsane-magicolor.so.1
|
||||
usr/lib/sane/libsane-magicolor.so.1.0.22
|
||||
usr/lib/sane/libsane-magicolor.so.1.0.24
|
||||
#usr/lib/sane/libsane-matsushita.la
|
||||
usr/lib/sane/libsane-matsushita.so
|
||||
usr/lib/sane/libsane-matsushita.so.1
|
||||
usr/lib/sane/libsane-matsushita.so.1.0.22
|
||||
usr/lib/sane/libsane-matsushita.so.1.0.24
|
||||
#usr/lib/sane/libsane-microtek.la
|
||||
usr/lib/sane/libsane-microtek.so
|
||||
usr/lib/sane/libsane-microtek.so.1
|
||||
usr/lib/sane/libsane-microtek.so.1.0.22
|
||||
usr/lib/sane/libsane-microtek.so.1.0.24
|
||||
#usr/lib/sane/libsane-microtek2.la
|
||||
usr/lib/sane/libsane-microtek2.so
|
||||
usr/lib/sane/libsane-microtek2.so.1
|
||||
usr/lib/sane/libsane-microtek2.so.1.0.22
|
||||
usr/lib/sane/libsane-microtek2.so.1.0.24
|
||||
#usr/lib/sane/libsane-mustek.la
|
||||
usr/lib/sane/libsane-mustek.so
|
||||
usr/lib/sane/libsane-mustek.so.1
|
||||
usr/lib/sane/libsane-mustek.so.1.0.22
|
||||
usr/lib/sane/libsane-mustek.so.1.0.24
|
||||
#usr/lib/sane/libsane-mustek_pp.la
|
||||
usr/lib/sane/libsane-mustek_pp.so
|
||||
usr/lib/sane/libsane-mustek_pp.so.1
|
||||
usr/lib/sane/libsane-mustek_pp.so.1.0.22
|
||||
usr/lib/sane/libsane-mustek_pp.so.1.0.24
|
||||
#usr/lib/sane/libsane-mustek_usb.la
|
||||
usr/lib/sane/libsane-mustek_usb.so
|
||||
usr/lib/sane/libsane-mustek_usb.so.1
|
||||
usr/lib/sane/libsane-mustek_usb.so.1.0.22
|
||||
usr/lib/sane/libsane-mustek_usb.so.1.0.24
|
||||
#usr/lib/sane/libsane-mustek_usb2.la
|
||||
usr/lib/sane/libsane-mustek_usb2.so
|
||||
usr/lib/sane/libsane-mustek_usb2.so.1
|
||||
usr/lib/sane/libsane-mustek_usb2.so.1.0.24
|
||||
#usr/lib/sane/libsane-nec.la
|
||||
usr/lib/sane/libsane-nec.so
|
||||
usr/lib/sane/libsane-nec.so.1
|
||||
usr/lib/sane/libsane-nec.so.1.0.22
|
||||
usr/lib/sane/libsane-nec.so.1.0.24
|
||||
#usr/lib/sane/libsane-net.la
|
||||
usr/lib/sane/libsane-net.so
|
||||
usr/lib/sane/libsane-net.so.1
|
||||
usr/lib/sane/libsane-net.so.1.0.22
|
||||
usr/lib/sane/libsane-net.so.1.0.24
|
||||
#usr/lib/sane/libsane-niash.la
|
||||
usr/lib/sane/libsane-niash.so
|
||||
usr/lib/sane/libsane-niash.so.1
|
||||
usr/lib/sane/libsane-niash.so.1.0.22
|
||||
usr/lib/sane/libsane-niash.so.1.0.24
|
||||
#usr/lib/sane/libsane-p5.la
|
||||
usr/lib/sane/libsane-p5.so
|
||||
usr/lib/sane/libsane-p5.so.1
|
||||
usr/lib/sane/libsane-p5.so.1.0.22
|
||||
usr/lib/sane/libsane-p5.so.1.0.24
|
||||
#usr/lib/sane/libsane-pie.la
|
||||
usr/lib/sane/libsane-pie.so
|
||||
usr/lib/sane/libsane-pie.so.1
|
||||
usr/lib/sane/libsane-pie.so.1.0.22
|
||||
usr/lib/sane/libsane-pie.so.1.0.24
|
||||
#usr/lib/sane/libsane-pixma.la
|
||||
usr/lib/sane/libsane-pixma.so
|
||||
usr/lib/sane/libsane-pixma.so.1
|
||||
usr/lib/sane/libsane-pixma.so.1.0.22
|
||||
usr/lib/sane/libsane-pixma.so.1.0.24
|
||||
#usr/lib/sane/libsane-plustek.la
|
||||
usr/lib/sane/libsane-plustek.so
|
||||
usr/lib/sane/libsane-plustek.so.1
|
||||
usr/lib/sane/libsane-plustek.so.1.0.22
|
||||
usr/lib/sane/libsane-plustek.so.1.0.24
|
||||
#usr/lib/sane/libsane-plustek_pp.la
|
||||
usr/lib/sane/libsane-plustek_pp.so
|
||||
usr/lib/sane/libsane-plustek_pp.so.1
|
||||
usr/lib/sane/libsane-plustek_pp.so.1.0.22
|
||||
usr/lib/sane/libsane-plustek_pp.so.1.0.24
|
||||
#usr/lib/sane/libsane-qcam.la
|
||||
usr/lib/sane/libsane-qcam.so
|
||||
usr/lib/sane/libsane-qcam.so.1
|
||||
usr/lib/sane/libsane-qcam.so.1.0.22
|
||||
usr/lib/sane/libsane-qcam.so.1.0.24
|
||||
#usr/lib/sane/libsane-ricoh.la
|
||||
usr/lib/sane/libsane-ricoh.so
|
||||
usr/lib/sane/libsane-ricoh.so.1
|
||||
usr/lib/sane/libsane-ricoh.so.1.0.22
|
||||
usr/lib/sane/libsane-ricoh.so.1.0.24
|
||||
#usr/lib/sane/libsane-rts8891.la
|
||||
usr/lib/sane/libsane-rts8891.so
|
||||
usr/lib/sane/libsane-rts8891.so.1
|
||||
usr/lib/sane/libsane-rts8891.so.1.0.22
|
||||
usr/lib/sane/libsane-rts8891.so.1.0.24
|
||||
#usr/lib/sane/libsane-s9036.la
|
||||
usr/lib/sane/libsane-s9036.so
|
||||
usr/lib/sane/libsane-s9036.so.1
|
||||
usr/lib/sane/libsane-s9036.so.1.0.22
|
||||
usr/lib/sane/libsane-s9036.so.1.0.24
|
||||
#usr/lib/sane/libsane-sceptre.la
|
||||
usr/lib/sane/libsane-sceptre.so
|
||||
usr/lib/sane/libsane-sceptre.so.1
|
||||
usr/lib/sane/libsane-sceptre.so.1.0.22
|
||||
usr/lib/sane/libsane-sceptre.so.1.0.24
|
||||
#usr/lib/sane/libsane-sharp.la
|
||||
usr/lib/sane/libsane-sharp.so
|
||||
usr/lib/sane/libsane-sharp.so.1
|
||||
usr/lib/sane/libsane-sharp.so.1.0.22
|
||||
usr/lib/sane/libsane-sharp.so.1.0.24
|
||||
#usr/lib/sane/libsane-sm3600.la
|
||||
usr/lib/sane/libsane-sm3600.so
|
||||
usr/lib/sane/libsane-sm3600.so.1
|
||||
usr/lib/sane/libsane-sm3600.so.1.0.22
|
||||
usr/lib/sane/libsane-sm3600.so.1.0.24
|
||||
#usr/lib/sane/libsane-sm3840.la
|
||||
usr/lib/sane/libsane-sm3840.so
|
||||
usr/lib/sane/libsane-sm3840.so.1
|
||||
usr/lib/sane/libsane-sm3840.so.1.0.22
|
||||
usr/lib/sane/libsane-sm3840.so.1.0.24
|
||||
#usr/lib/sane/libsane-snapscan.la
|
||||
usr/lib/sane/libsane-snapscan.so
|
||||
usr/lib/sane/libsane-snapscan.so.1
|
||||
usr/lib/sane/libsane-snapscan.so.1.0.22
|
||||
usr/lib/sane/libsane-snapscan.so.1.0.24
|
||||
#usr/lib/sane/libsane-sp15c.la
|
||||
usr/lib/sane/libsane-sp15c.so
|
||||
usr/lib/sane/libsane-sp15c.so.1
|
||||
usr/lib/sane/libsane-sp15c.so.1.0.22
|
||||
usr/lib/sane/libsane-sp15c.so.1.0.24
|
||||
#usr/lib/sane/libsane-st400.la
|
||||
usr/lib/sane/libsane-st400.so
|
||||
usr/lib/sane/libsane-st400.so.1
|
||||
usr/lib/sane/libsane-st400.so.1.0.22
|
||||
usr/lib/sane/libsane-st400.so.1.0.24
|
||||
#usr/lib/sane/libsane-stv680.la
|
||||
usr/lib/sane/libsane-stv680.so
|
||||
usr/lib/sane/libsane-stv680.so.1
|
||||
usr/lib/sane/libsane-stv680.so.1.0.22
|
||||
usr/lib/sane/libsane-stv680.so.1.0.24
|
||||
#usr/lib/sane/libsane-tamarack.la
|
||||
usr/lib/sane/libsane-tamarack.so
|
||||
usr/lib/sane/libsane-tamarack.so.1
|
||||
usr/lib/sane/libsane-tamarack.so.1.0.22
|
||||
usr/lib/sane/libsane-tamarack.so.1.0.24
|
||||
#usr/lib/sane/libsane-teco1.la
|
||||
usr/lib/sane/libsane-teco1.so
|
||||
usr/lib/sane/libsane-teco1.so.1
|
||||
usr/lib/sane/libsane-teco1.so.1.0.22
|
||||
usr/lib/sane/libsane-teco1.so.1.0.24
|
||||
#usr/lib/sane/libsane-teco2.la
|
||||
usr/lib/sane/libsane-teco2.so
|
||||
usr/lib/sane/libsane-teco2.so.1
|
||||
usr/lib/sane/libsane-teco2.so.1.0.22
|
||||
usr/lib/sane/libsane-teco2.so.1.0.24
|
||||
#usr/lib/sane/libsane-teco3.la
|
||||
usr/lib/sane/libsane-teco3.so
|
||||
usr/lib/sane/libsane-teco3.so.1
|
||||
usr/lib/sane/libsane-teco3.so.1.0.22
|
||||
usr/lib/sane/libsane-teco3.so.1.0.24
|
||||
#usr/lib/sane/libsane-test.la
|
||||
usr/lib/sane/libsane-test.so
|
||||
usr/lib/sane/libsane-test.so.1
|
||||
usr/lib/sane/libsane-test.so.1.0.22
|
||||
usr/lib/sane/libsane-test.so.1.0.24
|
||||
#usr/lib/sane/libsane-u12.la
|
||||
usr/lib/sane/libsane-u12.so
|
||||
usr/lib/sane/libsane-u12.so.1
|
||||
usr/lib/sane/libsane-u12.so.1.0.22
|
||||
usr/lib/sane/libsane-u12.so.1.0.24
|
||||
#usr/lib/sane/libsane-umax.la
|
||||
usr/lib/sane/libsane-umax.so
|
||||
usr/lib/sane/libsane-umax.so.1
|
||||
usr/lib/sane/libsane-umax.so.1.0.22
|
||||
usr/lib/sane/libsane-umax.so.1.0.24
|
||||
#usr/lib/sane/libsane-umax1220u.la
|
||||
usr/lib/sane/libsane-umax1220u.so
|
||||
usr/lib/sane/libsane-umax1220u.so.1
|
||||
usr/lib/sane/libsane-umax1220u.so.1.0.22
|
||||
usr/lib/sane/libsane-umax1220u.so.1.0.24
|
||||
#usr/lib/sane/libsane-umax_pp.la
|
||||
usr/lib/sane/libsane-umax_pp.so
|
||||
usr/lib/sane/libsane-umax_pp.so.1
|
||||
usr/lib/sane/libsane-umax_pp.so.1.0.22
|
||||
usr/lib/sane/libsane-umax_pp.so.1.0.24
|
||||
#usr/lib/sane/libsane-xerox_mfp.la
|
||||
usr/lib/sane/libsane-xerox_mfp.so
|
||||
usr/lib/sane/libsane-xerox_mfp.so.1
|
||||
usr/lib/sane/libsane-xerox_mfp.so.1.0.22
|
||||
usr/lib/sane/libsane-xerox_mfp.so.1.0.24
|
||||
usr/sbin/saned
|
||||
#usr/share/locale/bg/LC_MESSAGES/sane-backends.mo
|
||||
#usr/share/locale/cs/LC_MESSAGES/sane-backends.mo
|
||||
@@ -560,8 +574,10 @@ usr/share/locale/de/LC_MESSAGES/sane-backends.mo
|
||||
#usr/share/man/man5/sane-hs2p.5
|
||||
#usr/share/man/man5/sane-ibm.5
|
||||
#usr/share/man/man5/sane-kodak.5
|
||||
#usr/share/man/man5/sane-kodakaio.5
|
||||
#usr/share/man/man5/sane-kvs1025.5
|
||||
#usr/share/man/man5/sane-kvs20xx.5
|
||||
#usr/share/man/man5/sane-kvs40xx.5
|
||||
#usr/share/man/man5/sane-leo.5
|
||||
#usr/share/man/man5/sane-lexmark.5
|
||||
#usr/share/man/man5/sane-ma1509.5
|
||||
@@ -572,6 +588,7 @@ usr/share/locale/de/LC_MESSAGES/sane-backends.mo
|
||||
#usr/share/man/man5/sane-mustek.5
|
||||
#usr/share/man/man5/sane-mustek_pp.5
|
||||
#usr/share/man/man5/sane-mustek_usb.5
|
||||
#usr/share/man/man5/sane-mustek_usb2.5
|
||||
#usr/share/man/man5/sane-nec.5
|
||||
#usr/share/man/man5/sane-net.5
|
||||
#usr/share/man/man5/sane-niash.5
|
||||
@@ -611,7 +628,6 @@ usr/share/sane/artec_eplus48u
|
||||
usr/share/sane/epjitsu
|
||||
usr/share/sane/gt68xx
|
||||
usr/share/sane/snapscan
|
||||
#usr/var
|
||||
#usr/var/lock
|
||||
usr/var/lock/sane
|
||||
var/ipfire/backup/addons/includes/sane
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
etc/rc.d/init.d/tftpd
|
||||
usr/bin/tftp
|
||||
#usr/man/man1/tftp.1
|
||||
#usr/man/man8/in.tftpd.8
|
||||
#usr/man/man8/tftpd.8
|
||||
usr/sbin/tftpd
|
||||
#var/tftpboot
|
||||
etc/rc.d/init.d/tftpd
|
||||
|
||||
4
config/rootfiles/packages/vdr_vnsiserver5
Normal file
4
config/rootfiles/packages/vdr_vnsiserver5
Normal file
@@ -0,0 +1,4 @@
|
||||
etc/sysconfig/vdr-plugins.d/vnsiserver5.conf
|
||||
etc/vdr/plugins/vnsiserver5
|
||||
etc/vdr/plugins/vnsiserver5/allowed_hosts.conf
|
||||
usr/lib/vdr/libvdr-vnsiserver5.so.2.0.0
|
||||
@@ -70,7 +70,7 @@ while (<>) {
|
||||
$username = $tmp[2]; if ($username eq '') { $username='-'; };
|
||||
$method = $tmp[3];
|
||||
|
||||
$xlrator_url = $source_url;
|
||||
$xlrator_url = "";
|
||||
|
||||
if (($method eq 'GET') || ($method eq 'HEAD'))
|
||||
{
|
||||
@@ -212,9 +212,11 @@ while (<>) {
|
||||
# ----------- ADD NEW SOURCES BEFORE THIS LINE !!! ------------------
|
||||
}
|
||||
|
||||
$request="$xlrator_url $hostaddr $username $method\n";
|
||||
|
||||
print $request;
|
||||
if ($xlrator_url) {
|
||||
print "OK rewrite-url=\"$xlrator_url\"\n";
|
||||
} else {
|
||||
print "ERR\n";
|
||||
}
|
||||
}
|
||||
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
@@ -100,7 +100,7 @@ while($line = <>) {
|
||||
}
|
||||
|
||||
# break if redirector changes data
|
||||
if($return ne "\n" and $return ne $line ){
|
||||
if($return ne "ERR\n" and $return ne $line ){
|
||||
if ( $redirectors->[$i] ne "/usr/sbin/updxlrator"){
|
||||
if ($debug){
|
||||
writetolog($redirectors->[$i]." is stopping querry because block was found.");
|
||||
|
||||
5
config/vdr/plugins.d/vnsiserver5.conf
Normal file
5
config/vdr/plugins.d/vnsiserver5.conf
Normal file
@@ -0,0 +1,5 @@
|
||||
# Configuration snippet for vdr-vnsiserver5 -*- sh -*-
|
||||
#
|
||||
# Add command line options to pass to the vnsiserver5 plugin to PLUGIN_OPTIONS.
|
||||
|
||||
PLUGIN_OPTIONS=""
|
||||
@@ -18,3 +18,7 @@ other usefull commands from the Dom0:
|
||||
- shutdown the fire: "xm shutdown ipfire-xen"
|
||||
- reset the fire: "xm destroy ipfire-xen"
|
||||
- look what is going on: "xm top" or "xm list"
|
||||
|
||||
This script can also build a Citrix XenCenter xva image.
|
||||
- run "XEN_IMG_TYPE=xva sh xen-image-maker.sh" to build an xva image.
|
||||
- import the vm with "xe vm-import file=ipfire.xfa"
|
||||
|
||||
@@ -17,8 +17,8 @@ vif = [
|
||||
|
||||
|
||||
disk = [
|
||||
'file:/mnt/test/ipfire-boot.img,xvda1,w',
|
||||
'file:/mnt/test/ipfire-swap.img,xvda2,w',
|
||||
'file:/mnt/test/ipfire-root.img,xvda3,w',
|
||||
'file:/mnt/test/ipfire-var.img,xvda4,w'
|
||||
'file:./ipfire-boot.img,xvda1,w',
|
||||
'file:./ipfire-swap.img,xvda2,w',
|
||||
'file:./ipfire-root.img,xvda3,w',
|
||||
'file:./ipfire-var.img,xvda4,w'
|
||||
] #### Change path
|
||||
|
||||
@@ -28,23 +28,12 @@ KVER=xxxKVERxxx
|
||||
KERN_PACK=xxxKERN_PACKxxx
|
||||
KRNDOWN=http://mirror0.ipfire.org/pakfire2/$VERSION/paks
|
||||
CONSOLE=hvc0
|
||||
###############################################################################
|
||||
# If you really want to use outdated legacy kernel uncomment this lines. #####
|
||||
# Not recommended!!! ##########################################################
|
||||
######################
|
||||
#KERN_TYPE=xen
|
||||
#KVER=2.6.32.61
|
||||
#KERN_PACK=29
|
||||
#KRNDOWN=http://mirror0.ipfire.org/pakfire2/2.15/paks
|
||||
#CONSOLE=xvc0
|
||||
###############################################################################
|
||||
|
||||
SIZEboot=64
|
||||
SIZEswap=512
|
||||
SIZEroot=1024
|
||||
SIZEvar=1024
|
||||
# ct'server does not support ext4 so change this to ext3.
|
||||
FSTYPE=ext4
|
||||
FSTYPE=ext3
|
||||
|
||||
##############################################################################
|
||||
|
||||
@@ -62,6 +51,25 @@ IMGvar=./$SNAME-var.img
|
||||
|
||||
KERNEL=linux-$KERN_TYPE-$KVER-$KERN_PACK.ipfire
|
||||
|
||||
if [ "$XEN_IMG_TYPE" == "xva" ]; then
|
||||
# download xva.py if it not exist.
|
||||
if [ ! -e xva.py ]; then
|
||||
wget http://source.ipfire.org/source-2.x/xva.py
|
||||
fi
|
||||
# XenCenter use other devicenames and
|
||||
# xvdd seems to be reserved (converter bug?).
|
||||
P1=xvda
|
||||
P2=xvdb
|
||||
P3=xvdc
|
||||
P4=xvde
|
||||
else
|
||||
# old style xen image partition names
|
||||
P1=xvda1
|
||||
P2=xvda2
|
||||
P3=xvda3
|
||||
P4=xvda4
|
||||
fi
|
||||
|
||||
rm -rf $TMPDIR && mkdir -p $MNThdd && mkdir -p $ISODIR
|
||||
echo --------------------------------------------------------
|
||||
echo - Download $SOURCEISO ...
|
||||
@@ -108,7 +116,8 @@ mount -o loop $IMGboot $MNThdd/boot
|
||||
mount -o loop $IMGvar $MNThdd/var
|
||||
|
||||
# Install IPFire without kernel modules
|
||||
tar -C $MNThdd/ -xvf $ISODIR/$SNAME-$VERSION.tlz --lzma \
|
||||
xz -d < $ISODIR/$SNAME-$VERSION.tlz > $TMPDIR/$SNAME-$VERSION.tar
|
||||
tar -C $MNThdd/ -xvf $TMPDIR/$SNAME-$VERSION.tar \
|
||||
--exclude=lib/modules* --exclude=boot* --numeric-owner
|
||||
|
||||
#Install Kernel
|
||||
@@ -121,7 +130,7 @@ mkdir $MNThdd/boot/grub
|
||||
echo "timeout 10" > $MNThdd/boot/grub/grub.conf
|
||||
echo "default 0" >> $MNThdd/boot/grub/grub.conf
|
||||
echo "title IPFire ($KERN_TYPE-kernel)" >> $MNThdd/boot/grub/grub.conf
|
||||
echo " kernel /vmlinuz-$KVER-ipfire-$KERN_TYPE root=/dev/xvda3 rootdelay=10 panic=10 console=$CONSOLE ro" \
|
||||
echo " kernel /vmlinuz-$KVER-ipfire-$KERN_TYPE root=/dev/$P3 rootdelay=10 panic=10 console=$CONSOLE ro" \
|
||||
>> $MNThdd/boot/grub/grub.conf
|
||||
echo " initrd /ipfirerd-$KVER-$KERN_TYPE.img" >> $MNThdd/boot/grub/grub.conf
|
||||
echo "# savedefault 0" >> $MNThdd/boot/grub/grub.conf
|
||||
@@ -129,16 +138,16 @@ echo "# savedefault 0" >> $MNThdd/boot/grub/grub.conf
|
||||
ln -s grub.conf $MNThdd/boot/grub/menu.lst
|
||||
|
||||
#create the meta-info of linux-kernel package
|
||||
echo "" > $MNThdd/opt/pakfire/db/meta/linux-$KERN_TYPE
|
||||
echo "Name: linux-$KERN_TYPE" >> $MNThdd/opt/pakfire/db/meta/linux-$KERN_TYPE
|
||||
echo "ProgVersion: $KVER" >> $MNThdd/opt/pakfire/db/meta/linux-$KERN_TYPE
|
||||
echo "Release: $KERN_PACK" >> $MNThdd/opt/pakfire/db/meta/linux-$KERN_TYPE
|
||||
echo "" >> $MNThdd/opt/pakfire/db/meta/linux-$KERN_TYPE
|
||||
echo "" > $MNThdd/opt/pakfire/db/installed/linux-$KERN_TYPE
|
||||
echo "Name: linux-$KERN_TYPE" >> $MNThdd/opt/pakfire/db/installed/linux-$KERN_TYPE
|
||||
echo "ProgVersion: $KVER" >> $MNThdd/opt/pakfire/db/installed/linux-$KERN_TYPE
|
||||
echo "Release: $KERN_PACK" >> $MNThdd/opt/pakfire/db/installed/linux-$KERN_TYPE
|
||||
echo "" >> $MNThdd/opt/pakfire/db/installed/linux-$KERN_TYPE
|
||||
echo "" > $MNThdd/opt/pakfire/db/meta/meta-linux-$KERN_TYPE
|
||||
echo "Name: linux-$KERN_TYPE" >> $MNThdd/opt/pakfire/db/meta/meta-linux-$KERN_TYPE
|
||||
echo "ProgVersion: $KVER" >> $MNThdd/opt/pakfire/db/meta/meta-linux-$KERN_TYPE
|
||||
echo "Release: $KERN_PACK" >> $MNThdd/opt/pakfire/db/meta/meta-linux-$KERN_TYPE
|
||||
echo "" >> $MNThdd/opt/pakfire/db/meta/meta-linux-$KERN_TYPE
|
||||
echo "" > $MNThdd/opt/pakfire/db/installed/meta-linux-$KERN_TYPE
|
||||
echo "Name: linux-$KERN_TYPE" >> $MNThdd/opt/pakfire/db/installed/meta-linux-$KERN_TYPE
|
||||
echo "ProgVersion: $KVER" >> $MNThdd/opt/pakfire/db/installed/meta-linux-$KERN_TYPE
|
||||
echo "Release: $KERN_PACK" >> $MNThdd/opt/pakfire/db/installed/meta-linux-$KERN_TYPE
|
||||
echo "" >> $MNThdd/opt/pakfire/db/installed/meta-linux-$KERN_TYPE
|
||||
|
||||
#Set default configuration
|
||||
echo "LANGUAGE=en" >> $MNThdd/var/ipfire/main/settings
|
||||
@@ -150,10 +159,10 @@ mount --bind /proc $MNThdd/proc
|
||||
mount --bind /dev $MNThdd/dev
|
||||
mount --bind /sys $MNThdd/sys
|
||||
chroot $MNThdd /usr/bin/perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
|
||||
sed -i -e "s|DEVICE1|/dev/xvda1|g" $MNThdd/etc/fstab
|
||||
sed -i -e "s|DEVICE2|/dev/xvda2|g" $MNThdd/etc/fstab
|
||||
sed -i -e "s|DEVICE3|/dev/xvda3|g" $MNThdd/etc/fstab
|
||||
sed -i -e "s|DEVICE4|/dev/xvda4|g" $MNThdd/etc/fstab
|
||||
sed -i -e "s|DEVICE1|/dev/$P1|g" $MNThdd/etc/fstab
|
||||
sed -i -e "s|DEVICE2|/dev/$P2|g" $MNThdd/etc/fstab
|
||||
sed -i -e "s|DEVICE3|/dev/$P3|g" $MNThdd/etc/fstab
|
||||
sed -i -e "s|DEVICE4|/dev/$P4|g" $MNThdd/etc/fstab
|
||||
|
||||
sed -i -e "s|FSTYPE|$FSTYPE|g" $MNThdd/etc/fstab
|
||||
|
||||
@@ -192,6 +201,11 @@ umount $MNThdd
|
||||
|
||||
umount $ISODIR
|
||||
rm -rf ./ipfire-tmp
|
||||
|
||||
if [ "$XEN_IMG_TYPE" == "xva" ]; then
|
||||
python xva.py --sparse -c $SNAME.cfg -f $SNAME.xva
|
||||
rm -f $SNAME*.img
|
||||
fi
|
||||
echo --------------------------------------------------------
|
||||
echo - Done.
|
||||
echo --------------------------------------------------------
|
||||
|
||||
@@ -615,7 +615,6 @@ WARNING: untranslated string: addons
|
||||
WARNING: untranslated string: bytes
|
||||
WARNING: untranslated string: community rules
|
||||
WARNING: untranslated string: dead peer detection
|
||||
WARNING: untranslated string: dns servers
|
||||
WARNING: untranslated string: downlink
|
||||
WARNING: untranslated string: emerging rules
|
||||
WARNING: untranslated string: first
|
||||
|
||||
@@ -647,7 +647,6 @@ WARNING: translation string unused: year-graph
|
||||
WARNING: translation string unused: yearly firewallhits
|
||||
WARNING: untranslated string: Scan for Songs
|
||||
WARNING: untranslated string: bytes
|
||||
WARNING: untranslated string: dns servers
|
||||
WARNING: untranslated string: downlink
|
||||
WARNING: untranslated string: first
|
||||
WARNING: untranslated string: fwhost err hostip
|
||||
|
||||
@@ -632,12 +632,14 @@ WARNING: untranslated string: countries
|
||||
WARNING: untranslated string: country codes and flags
|
||||
WARNING: untranslated string: countrycode
|
||||
WARNING: untranslated string: dead peer detection
|
||||
WARNING: untranslated string: default
|
||||
WARNING: untranslated string: deprecated fs warn
|
||||
WARNING: untranslated string: details
|
||||
WARNING: untranslated string: dh
|
||||
WARNING: untranslated string: dh key move failed
|
||||
WARNING: untranslated string: dh key warn
|
||||
WARNING: untranslated string: dh key warn1
|
||||
WARNING: untranslated string: dh parameter
|
||||
WARNING: untranslated string: dnat address
|
||||
WARNING: untranslated string: dns servers
|
||||
WARNING: untranslated string: dnsforward
|
||||
@@ -648,6 +650,7 @@ WARNING: untranslated string: dnsforward entries
|
||||
WARNING: untranslated string: dnsforward forward_server
|
||||
WARNING: untranslated string: dnsforward zone
|
||||
WARNING: untranslated string: downlink
|
||||
WARNING: untranslated string: download dh parameter
|
||||
WARNING: untranslated string: dpd delay
|
||||
WARNING: untranslated string: dpd timeout
|
||||
WARNING: untranslated string: drop action
|
||||
|
||||
@@ -642,12 +642,14 @@ WARNING: untranslated string: countries
|
||||
WARNING: untranslated string: country codes and flags
|
||||
WARNING: untranslated string: countrycode
|
||||
WARNING: untranslated string: dead peer detection
|
||||
WARNING: untranslated string: default
|
||||
WARNING: untranslated string: deprecated fs warn
|
||||
WARNING: untranslated string: details
|
||||
WARNING: untranslated string: dh
|
||||
WARNING: untranslated string: dh key move failed
|
||||
WARNING: untranslated string: dh key warn
|
||||
WARNING: untranslated string: dh key warn1
|
||||
WARNING: untranslated string: dh parameter
|
||||
WARNING: untranslated string: dnat address
|
||||
WARNING: untranslated string: dns address deleted txt
|
||||
WARNING: untranslated string: dns servers
|
||||
@@ -659,6 +661,7 @@ WARNING: untranslated string: dnsforward entries
|
||||
WARNING: untranslated string: dnsforward forward_server
|
||||
WARNING: untranslated string: dnsforward zone
|
||||
WARNING: untranslated string: downlink
|
||||
WARNING: untranslated string: download dh parameter
|
||||
WARNING: untranslated string: dpd delay
|
||||
WARNING: untranslated string: dpd timeout
|
||||
WARNING: untranslated string: drop action
|
||||
|
||||
@@ -650,11 +650,14 @@ WARNING: untranslated string: Scan for Songs
|
||||
WARNING: untranslated string: atm device
|
||||
WARNING: untranslated string: bytes
|
||||
WARNING: untranslated string: capabilities
|
||||
WARNING: untranslated string: default
|
||||
WARNING: untranslated string: dh
|
||||
WARNING: untranslated string: dh key move failed
|
||||
WARNING: untranslated string: dh key warn
|
||||
WARNING: untranslated string: dh key warn1
|
||||
WARNING: untranslated string: dh parameter
|
||||
WARNING: untranslated string: dns servers
|
||||
WARNING: untranslated string: download dh parameter
|
||||
WARNING: untranslated string: drop outgoing
|
||||
WARNING: untranslated string: firewall logs country
|
||||
WARNING: untranslated string: fwhost err hostip
|
||||
|
||||
@@ -632,12 +632,14 @@ WARNING: untranslated string: countries
|
||||
WARNING: untranslated string: country codes and flags
|
||||
WARNING: untranslated string: countrycode
|
||||
WARNING: untranslated string: dead peer detection
|
||||
WARNING: untranslated string: default
|
||||
WARNING: untranslated string: deprecated fs warn
|
||||
WARNING: untranslated string: details
|
||||
WARNING: untranslated string: dh
|
||||
WARNING: untranslated string: dh key move failed
|
||||
WARNING: untranslated string: dh key warn
|
||||
WARNING: untranslated string: dh key warn1
|
||||
WARNING: untranslated string: dh parameter
|
||||
WARNING: untranslated string: dnat address
|
||||
WARNING: untranslated string: dns servers
|
||||
WARNING: untranslated string: dnsforward
|
||||
@@ -648,6 +650,7 @@ WARNING: untranslated string: dnsforward entries
|
||||
WARNING: untranslated string: dnsforward forward_server
|
||||
WARNING: untranslated string: dnsforward zone
|
||||
WARNING: untranslated string: downlink
|
||||
WARNING: untranslated string: download dh parameter
|
||||
WARNING: untranslated string: dpd delay
|
||||
WARNING: untranslated string: dpd timeout
|
||||
WARNING: untranslated string: drop action
|
||||
|
||||
@@ -636,12 +636,14 @@ WARNING: untranslated string: countries
|
||||
WARNING: untranslated string: country codes and flags
|
||||
WARNING: untranslated string: countrycode
|
||||
WARNING: untranslated string: dead peer detection
|
||||
WARNING: untranslated string: default
|
||||
WARNING: untranslated string: deprecated fs warn
|
||||
WARNING: untranslated string: details
|
||||
WARNING: untranslated string: dh
|
||||
WARNING: untranslated string: dh key move failed
|
||||
WARNING: untranslated string: dh key warn
|
||||
WARNING: untranslated string: dh key warn1
|
||||
WARNING: untranslated string: dh parameter
|
||||
WARNING: untranslated string: disk access per
|
||||
WARNING: untranslated string: dnat address
|
||||
WARNING: untranslated string: dns servers
|
||||
@@ -653,6 +655,7 @@ WARNING: untranslated string: dnsforward entries
|
||||
WARNING: untranslated string: dnsforward forward_server
|
||||
WARNING: untranslated string: dnsforward zone
|
||||
WARNING: untranslated string: downlink
|
||||
WARNING: untranslated string: download dh parameter
|
||||
WARNING: untranslated string: dpd delay
|
||||
WARNING: untranslated string: dpd timeout
|
||||
WARNING: untranslated string: drop action
|
||||
|
||||
@@ -648,10 +648,13 @@ WARNING: untranslated string: Number of Countries for the pie chart
|
||||
WARNING: untranslated string: Scan for Songs
|
||||
WARNING: untranslated string: bytes
|
||||
WARNING: untranslated string: capabilities
|
||||
WARNING: untranslated string: default
|
||||
WARNING: untranslated string: dh
|
||||
WARNING: untranslated string: dh key move failed
|
||||
WARNING: untranslated string: dh key warn
|
||||
WARNING: untranslated string: dh key warn1
|
||||
WARNING: untranslated string: dh parameter
|
||||
WARNING: untranslated string: download dh parameter
|
||||
WARNING: untranslated string: firewall logs country
|
||||
WARNING: untranslated string: fwhost err hostip
|
||||
WARNING: untranslated string: gen dh
|
||||
|
||||
@@ -76,6 +76,7 @@
|
||||
< countries
|
||||
< countrycode
|
||||
< country codes and flags
|
||||
< default
|
||||
< default ip
|
||||
< deprecated fs warn
|
||||
< details
|
||||
@@ -83,6 +84,7 @@
|
||||
< dh key move failed
|
||||
< dh key warn
|
||||
< dh key warn1
|
||||
< dh parameter
|
||||
< dnat address
|
||||
< dns address deleted txt
|
||||
< dnsforward
|
||||
@@ -92,6 +94,8 @@
|
||||
< dnsforward entries
|
||||
< dnsforward forward_server
|
||||
< dnsforward zone
|
||||
< dns servers
|
||||
< download dh parameter
|
||||
< dpd delay
|
||||
< dpd timeout
|
||||
< drop action
|
||||
@@ -592,6 +596,7 @@
|
||||
< countries
|
||||
< countrycode
|
||||
< country codes and flags
|
||||
< default
|
||||
< default ip
|
||||
< deprecated fs warn
|
||||
< details
|
||||
@@ -599,6 +604,7 @@
|
||||
< dh key move failed
|
||||
< dh key warn
|
||||
< dh key warn1
|
||||
< dh parameter
|
||||
< dnat address
|
||||
< dnsforward
|
||||
< dnsforward add a new entry
|
||||
@@ -607,6 +613,8 @@
|
||||
< dnsforward entries
|
||||
< dnsforward forward_server
|
||||
< dnsforward zone
|
||||
< dns servers
|
||||
< download dh parameter
|
||||
< dpd delay
|
||||
< dpd timeout
|
||||
< drop action
|
||||
@@ -1099,6 +1107,7 @@
|
||||
< countries
|
||||
< countrycode
|
||||
< country codes and flags
|
||||
< default
|
||||
< default ip
|
||||
< deprecated fs warn
|
||||
< details
|
||||
@@ -1106,6 +1115,7 @@
|
||||
< dh key move failed
|
||||
< dh key warn
|
||||
< dh key warn1
|
||||
< dh parameter
|
||||
< dnat address
|
||||
< dnsforward
|
||||
< dnsforward add a new entry
|
||||
@@ -1114,6 +1124,8 @@
|
||||
< dnsforward entries
|
||||
< dnsforward forward_server
|
||||
< dnsforward zone
|
||||
< dns servers
|
||||
< download dh parameter
|
||||
< dpd delay
|
||||
< dpd timeout
|
||||
< drop action
|
||||
@@ -1584,6 +1596,7 @@
|
||||
< countrycode
|
||||
< country codes and flags
|
||||
< day-graph
|
||||
< default
|
||||
< default ip
|
||||
< deprecated fs warn
|
||||
< details
|
||||
@@ -1591,6 +1604,7 @@
|
||||
< dh key move failed
|
||||
< dh key warn
|
||||
< dh key warn1
|
||||
< dh parameter
|
||||
< disk access per
|
||||
< dnat address
|
||||
< dnsforward
|
||||
@@ -1600,6 +1614,8 @@
|
||||
< dnsforward entries
|
||||
< dnsforward forward_server
|
||||
< dnsforward zone
|
||||
< dns servers
|
||||
< download dh parameter
|
||||
< dpd delay
|
||||
< dpd timeout
|
||||
< drop action
|
||||
|
||||
@@ -13,3 +13,11 @@ Maintainer / advanced commands
|
||||
toolchain : Create our own toolchain package to save 20% of build time.
|
||||
shell : Enter a shell inside the chroot, used to tune lfs script
|
||||
and / or during kernel upgrade to rebuild a new .config
|
||||
|
||||
|
||||
Options:
|
||||
--target=[armv5tel|i586] : Cross-compile for this target architecture.
|
||||
Uses the QEMU emulator if needed to virtualise
|
||||
the desired target architecture.
|
||||
Can be permanently set with TARGET_ARCH= in
|
||||
.config.
|
||||
|
||||
@@ -172,105 +172,6 @@ sub deletebackupcert
|
||||
unlink ("${General::swroot}/ovpn/certs/$hexvalue.pem");
|
||||
}
|
||||
}
|
||||
sub checkportfw {
|
||||
my $DPORT = shift;
|
||||
my $DPROT = shift;
|
||||
my %natconfig =();
|
||||
my $confignat = "${General::swroot}/firewall/config";
|
||||
$DPROT= uc ($DPROT);
|
||||
&General::readhasharray($confignat, \%natconfig);
|
||||
foreach my $key (sort keys %natconfig){
|
||||
my @portarray = split (/\|/,$natconfig{$key}[30]);
|
||||
foreach my $value (@portarray){
|
||||
if ($value =~ /:/i){
|
||||
my ($a,$b) = split (":",$value);
|
||||
if ($DPROT eq $natconfig{$key}[12] && $DPORT gt $a && $DPORT lt $b){
|
||||
$errormessage= "$Lang::tr{'source port in use'} $DPORT";
|
||||
}
|
||||
}else{
|
||||
if ($DPROT eq $natconfig{$key}[12] && $DPORT eq $value){
|
||||
$errormessage= "$Lang::tr{'source port in use'} $DPORT";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
sub checkportoverlap
|
||||
{
|
||||
my $portrange1 = $_[0]; # New port range
|
||||
my $portrange2 = $_[1]; # existing port range
|
||||
my @tempr1 = split(/\:/,$portrange1);
|
||||
my @tempr2 = split(/\:/,$portrange2);
|
||||
|
||||
unless (&checkportinc($tempr1[0], $portrange2)){ return 0;}
|
||||
unless (&checkportinc($tempr1[1], $portrange2)){ return 0;}
|
||||
|
||||
unless (&checkportinc($tempr2[0], $portrange1)){ return 0;}
|
||||
unless (&checkportinc($tempr2[1], $portrange1)){ return 0;}
|
||||
|
||||
return 1; # Everything checks out!
|
||||
}
|
||||
|
||||
# Darren Critchley - we want to make sure that a port entry is not within an already existing range
|
||||
sub checkportinc
|
||||
{
|
||||
my $port1 = $_[0]; # Port
|
||||
my $portrange2 = $_[1]; # Port range
|
||||
my @tempr1 = split(/\:/,$portrange2);
|
||||
|
||||
if ($port1 < $tempr1[0] || $port1 > $tempr1[1]) {
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
# Darren Critchley - certain ports are reserved for IPFire
|
||||
# TCP 67,68,81,222,444
|
||||
# UDP 67,68
|
||||
# Params passed in -> port, rangeyn, protocol
|
||||
sub disallowreserved
|
||||
{
|
||||
# port 67 and 68 same for tcp and udp, don't bother putting in an array
|
||||
my $msg = "";
|
||||
my @tcp_reserved = (81,222,444);
|
||||
my $prt = $_[0]; # the port or range
|
||||
my $ryn = $_[1]; # tells us whether or not it is a port range
|
||||
my $prot = $_[2]; # protocol
|
||||
my $srcdst = $_[3]; # source or destination
|
||||
if ($ryn) { # disect port range
|
||||
if ($srcdst eq "src") {
|
||||
$msg = "$Lang::tr{'rsvd src port overlap'}";
|
||||
} else {
|
||||
$msg = "$Lang::tr{'rsvd dst port overlap'}";
|
||||
}
|
||||
my @tmprng = split(/\:/,$prt);
|
||||
unless (67 < $tmprng[0] || 67 > $tmprng[1]) { $errormessage="$msg 67"; return; }
|
||||
unless (68 < $tmprng[0] || 68 > $tmprng[1]) { $errormessage="$msg 68"; return; }
|
||||
if ($prot eq "tcp") {
|
||||
foreach my $prange (@tcp_reserved) {
|
||||
unless ($prange < $tmprng[0] || $prange > $tmprng[1]) { $errormessage="$msg $prange"; return; }
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if ($srcdst eq "src") {
|
||||
$msg = "$Lang::tr{'reserved src port'}";
|
||||
} else {
|
||||
$msg = "$Lang::tr{'reserved dst port'}";
|
||||
}
|
||||
if ($prt == 67) { $errormessage="$msg 67"; return; }
|
||||
if ($prt == 68) { $errormessage="$msg 68"; return; }
|
||||
if ($prot eq "tcp") {
|
||||
foreach my $prange (@tcp_reserved) {
|
||||
if ($prange == $prt) { $errormessage="$msg $prange"; return; }
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
sub writeserverconf {
|
||||
my %sovpnsettings = ();
|
||||
@@ -369,7 +270,7 @@ sub writeserverconf {
|
||||
print CONF "auth $sovpnsettings{'DAUTH'}\n";
|
||||
}
|
||||
if ($sovpnsettings{'TLSAUTH'} eq 'on') {
|
||||
print CONF "tls-auth ${General::swroot}/ovpn/ca/ta.key 0\n";
|
||||
print CONF "tls-auth ${General::swroot}/ovpn/certs/ta.key\n";
|
||||
}
|
||||
if ($sovpnsettings{DCOMPLZO} eq 'on') {
|
||||
print CONF "comp-lzo\n";
|
||||
@@ -810,13 +711,6 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save-adv-options'}) {
|
||||
$vpnsettings{'MSSFIX'} = $cgiparams{'MSSFIX'};
|
||||
}
|
||||
|
||||
# Create ta.key for tls-auth if not presant
|
||||
if ($cgiparams{'TLSAUTH'} eq 'on') {
|
||||
if ( ! -e "${General::swroot}/ovpn/ca/ta.key") {
|
||||
system('/usr/sbin/openvpn', '--genkey', '--secret', "${General::swroot}/ovpn/ca/ta.key")
|
||||
}
|
||||
}
|
||||
|
||||
if (($cgiparams{'PMTU_DISCOVERY'} eq 'yes') ||
|
||||
($cgiparams{'PMTU_DISCOVERY'} eq 'maybe') ||
|
||||
($cgiparams{'PMTU_DISCOVERY'} eq 'no' )) {
|
||||
@@ -915,6 +809,16 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save-adv-options'}) {
|
||||
$errormessage = $Lang::tr{'invalid input for keepalive 1:2'};
|
||||
goto ADV_ERROR;
|
||||
}
|
||||
# Create ta.key for tls-auth if not presant
|
||||
if ($cgiparams{'TLSAUTH'} eq 'on') {
|
||||
if ( ! -e "${General::swroot}/ovpn/certs/ta.key") {
|
||||
system('/usr/sbin/openvpn', '--genkey', '--secret', "${General::swroot}/ovpn/certs/ta.key");
|
||||
if ($?) {
|
||||
$errormessage = "$Lang::tr{'openssl produced an error'}: $?";
|
||||
goto ADV_ERROR;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&General::writehash("${General::swroot}/ovpn/settings", \%vpnsettings);
|
||||
&writeserverconf();#hier ok
|
||||
@@ -1119,7 +1023,6 @@ unless(-d "${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}"){mkdir "${General
|
||||
### Save main settings
|
||||
###
|
||||
|
||||
|
||||
if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cgiparams{'KEY'} eq '') {
|
||||
&General::readhash("${General::swroot}/ovpn/settings", \%vpnsettings);
|
||||
#DAN do we really need (to to check) this value? Besides if we listen on blue and orange too,
|
||||
@@ -1130,13 +1033,7 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cg
|
||||
goto SETTINGS_ERROR;
|
||||
}
|
||||
}
|
||||
if ($errormessage) { goto SETTINGS_ERROR; }
|
||||
|
||||
if ($cgiparams{'ENABLED'} eq 'on'){
|
||||
&checkportfw($cgiparams{'DDEST_PORT'},$cgiparams{'DPROTOCOL'});
|
||||
}
|
||||
if ($errormessage) { goto SETTINGS_ERROR; }
|
||||
|
||||
if (! &General::validipandmask($cgiparams{'DOVPN_SUBNET'})) {
|
||||
$errormessage = $Lang::tr{'ovpn subnet is invalid'};
|
||||
goto SETTINGS_ERROR;
|
||||
@@ -1621,6 +1518,18 @@ END
|
||||
print `/usr/bin/openssl x509 -in ${General::swroot}/ovpn/certs/servercert.pem`;
|
||||
exit(0);
|
||||
}
|
||||
|
||||
###
|
||||
### Download Diffie-Hellman parameter
|
||||
###
|
||||
}elsif ($cgiparams{'ACTION'} eq $Lang::tr{'download dh parameter'}) {
|
||||
if ( -f "${General::swroot}/ovpn/ca/dh1024.pem" ) {
|
||||
print "Content-Type: application/octet-stream\r\n";
|
||||
print "Content-Disposition: filename=dh1024.pem\r\n\r\n";
|
||||
print `/usr/bin/openssl dhparam -in ${General::swroot}/ovpn/ca/dh1024.pem`;
|
||||
exit(0);
|
||||
}
|
||||
|
||||
###
|
||||
### Form for generating a root certificate
|
||||
###
|
||||
@@ -1944,7 +1853,14 @@ END
|
||||
goto ROOTCERT_ERROR;
|
||||
# } else {
|
||||
# &cleanssldatabase();
|
||||
}
|
||||
}
|
||||
# Create ta.key for tls-auth
|
||||
system('/usr/sbin/openvpn', '--genkey', '--secret', "${General::swroot}/ovpn/certs/ta.key");
|
||||
if ($?) {
|
||||
$errormessage = "$Lang::tr{'openssl produced an error'}: $?";
|
||||
&cleanssldatabase();
|
||||
goto ROOTCERT_ERROR;
|
||||
}
|
||||
goto ROOTCERT_SUCCESS;
|
||||
}
|
||||
ROOTCERT_ERROR:
|
||||
@@ -2286,8 +2202,8 @@ else
|
||||
print CLIENTCONF "auth $vpnsettings{'DAUTH'}\r\n";
|
||||
}
|
||||
if ($vpnsettings{'TLSAUTH'} eq 'on') {
|
||||
print CLIENTCONF "tls-auth ta.key 1\r\n";
|
||||
$zip->addFile( "${General::swroot}/ovpn/ca/ta.key", "ta.key") or die "Can't add file ta.key\n";
|
||||
print CLIENTCONF "tls-auth ta.key\r\n";
|
||||
$zip->addFile( "${General::swroot}/ovpn/certs/ta.key", "ta.key") or die "Can't add file ta.key\n";
|
||||
}
|
||||
if ($vpnsettings{DCOMPLZO} eq 'on') {
|
||||
print CLIENTCONF "comp-lzo\r\n";
|
||||
@@ -2511,20 +2427,8 @@ ADV_ERROR:
|
||||
if ($cgiparams{'DAUTH'} eq '') {
|
||||
$cgiparams{'DAUTH'} = 'SHA1';
|
||||
}
|
||||
if ($cgiparams{'DAUTH'} eq '') {
|
||||
$cgiparams{'DAUTH'} = 'SHA1';
|
||||
}
|
||||
if ($cgiparams{'ENGINES'} eq '') {
|
||||
$cgiparams{'ENGINES'} = 'disabled';
|
||||
}
|
||||
if ($cgiparams{'TLSAUTH'} eq '') {
|
||||
$cgiparams{'TLSAUTH'} = 'off';
|
||||
}
|
||||
if ($cgiparams{'DAUTH'} eq '') {
|
||||
$cgiparams{'DAUTH'} = 'SHA1';
|
||||
}
|
||||
if ($cgiparams{'TLSAUTH'} eq '') {
|
||||
$cgiparams{'TLSAUTH'} = 'off';
|
||||
$cgiparams{'TLSAUTH'} = 'off';
|
||||
}
|
||||
$checked{'CLIENT2CLIENT'}{'off'} = '';
|
||||
$checked{'CLIENT2CLIENT'}{'on'} = '';
|
||||
@@ -4576,7 +4480,7 @@ if ($cgiparams{'TYPE'} eq 'net') {
|
||||
<option value='CAMELLIA-256-CBC' $selected{'DCIPHER'}{'CAMELLIA-256-CBC'}>CAMELLIA-CBC (256 $Lang::tr{'bit'})</option>
|
||||
<option value='CAMELLIA-192-CBC' $selected{'DCIPHER'}{'CAMELLIA-192-CBC'}>CAMELLIA-CBC (192 $Lang::tr{'bit'})</option>
|
||||
<option value='CAMELLIA-128-CBC' $selected{'DCIPHER'}{'CAMELLIA-128-CBC'}>CAMELLIA-CBC (128 $Lang::tr{'bit'})</option>
|
||||
<option value='AES-256-CBC' $selected{'DCIPHER'}{'AES-256-CBC'}>AES-CBC (256 $Lang::tr{'bit'})</option>
|
||||
<option value='AES-256-CBC' $selected{'DCIPHER'}{'AES-256-CBC'}>AES-CBC (256 $Lang::tr{'bit'}, $Lang::tr{'default'})</option>
|
||||
<option value='AES-192-CBC' $selected{'DCIPHER'}{'AES-192-CBC'}>AES-CBC (192 $Lang::tr{'bit'})</option>
|
||||
<option value='AES-128-CBC' $selected{'DCIPHER'}{'AES-128-CBC'}>AES-CBC (128 $Lang::tr{'bit'})</option>
|
||||
<option value='DES-EDE3-CBC' $selected{'DCIPHER'}{'DES-EDE3-CBC'}>DES-EDE3-CBC (192 $Lang::tr{'bit'})</option>
|
||||
@@ -4927,9 +4831,6 @@ END
|
||||
if ($cgiparams{'DAUTH'} eq '') {
|
||||
$cgiparams{'DAUTH'} = 'SHA1';
|
||||
}
|
||||
if ($cgiparams{'ENGINES'} eq '') {
|
||||
$cgiparams{'ENGINES'} = 'disabled';
|
||||
}
|
||||
if ($cgiparams{'DOVPN_SUBNET'} eq '') {
|
||||
$cgiparams{'DOVPN_SUBNET'} = '10.' . int(rand(256)) . '.' . int(rand(256)) . '.0/255.255.255.0';
|
||||
}
|
||||
@@ -5325,7 +5226,9 @@ END
|
||||
END
|
||||
;
|
||||
my $col1="bgcolor='$color{'color22'}'";
|
||||
my $col2="bgcolor='$color{'color20'}'";
|
||||
my $col2="bgcolor='$color{'color20'}'";
|
||||
my $col3="bgcolor='$color{'color22'}'";
|
||||
|
||||
if (-f "${General::swroot}/ovpn/ca/cacert.pem") {
|
||||
my $casubject = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/ca/cacert.pem`;
|
||||
$casubject =~ /Subject: (.*)[\n]/;
|
||||
@@ -5391,6 +5294,39 @@ END
|
||||
;
|
||||
}
|
||||
|
||||
# Adding DH parameter to chart
|
||||
if (-f "${General::swroot}/ovpn/ca/dh1024.pem") {
|
||||
my $dhsubject = `/usr/bin/openssl dhparam -text -in ${General::swroot}/ovpn/ca/dh1024.pem`;
|
||||
$dhsubject =~ /PKCS#3 (.*)[\n]/;
|
||||
$dhsubject = $1;
|
||||
|
||||
|
||||
print <<END;
|
||||
<tr>
|
||||
<td class='base' $col3>$Lang::tr{'dh parameter'}</td>
|
||||
<td class='base' $col3>$dhsubject</td>
|
||||
<form method='post' name='frmdhparam'><td width='3%' align='center' $col3>
|
||||
<input type='hidden' name='ACTION' value='$Lang::tr{'show dh'}' />
|
||||
<input type='image' name='$Lang::tr{'show dh'}' src='/images/info.gif' alt='$Lang::tr{'show dh'}' title='$Lang::tr{'show dh'}' width='20' height='20' border='0' />
|
||||
</td></form>
|
||||
<form method='post' name='frmdhparam'><td width='3%' align='center' $col3>
|
||||
<input type='image' name="$Lang::tr{'download dh parameter'}" src='/images/media-floppy.png' alt="$Lang::tr{'download dh parameter'}" title="$Lang::tr{'download dh parameter'}" border='0' />
|
||||
<input type='hidden' name='ACTION' value="$Lang::tr{'download dh parameter'}" />
|
||||
</td></form>
|
||||
<td width='4%' $col3> </td></tr>
|
||||
END
|
||||
;
|
||||
} else {
|
||||
# Nothing
|
||||
print <<END;
|
||||
<tr>
|
||||
<td width='25%' class='base' $col3>$Lang::tr{'dh parameter'}:</td>
|
||||
<td class='base' $col3>$Lang::tr{'not present'}</td>
|
||||
</td><td colspan='3' $col3> </td></tr>
|
||||
END
|
||||
;
|
||||
}
|
||||
|
||||
if (! -f "${General::swroot}/ovpn/ca/cacert.pem") {
|
||||
print "<tr><td colspan='5' align='center'><form method='post'>";
|
||||
print "<input type='submit' name='ACTION' value='$Lang::tr{'generate root/host certificates'}' />";
|
||||
@@ -5462,7 +5398,7 @@ END
|
||||
|
||||
<tr><td colspan=4><hr /></td></tr><tr>
|
||||
<tr>
|
||||
<td class'base'><b>$Lang::tr{'ovpn dh parameters'}:</b></td>
|
||||
<td class'base'><b>$Lang::tr{'ovpn dh parameters'}</b></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
@@ -5476,9 +5412,6 @@ END
|
||||
<td nowrap='nowrap'><size='15' align='left'/></td>
|
||||
<td nowrap='nowrap'><input type='submit' name='ACTION' value='$Lang::tr{'generate dh key'}' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='4' align='right'><input type='submit' name='ACTION' value='$Lang::tr{'show dh'}' /></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<tr><td colspan=4><hr /></td></tr><tr>
|
||||
|
||||
@@ -635,6 +635,7 @@
|
||||
'december' => 'Dezember',
|
||||
'deep scan directories' => 'rekursiv scannen',
|
||||
'def lease time' => 'Standardzeit für Zuordnung',
|
||||
'default' => 'Voreinstellung',
|
||||
'default ip' => 'Standard IP-Adresse',
|
||||
'default lease time' => 'Haltezeit-Voreinstellung in min:',
|
||||
'default networks' => 'Standard Netzwerke',
|
||||
@@ -666,6 +667,7 @@
|
||||
'dh key move failed' => 'Verschieben der Diffie-Hellman-Parameter fehlgeschlagen.',
|
||||
'dh key warn' => 'Das Generieren der Diffie-Hellman-Parameter mit 1024 oder 2048 Bit dauert üblicherweise mehrere Minuten. Schlüssellängen von 3072 oder 4096 Bit beanspruchen mehrere Stunden. Bitte haben Sie etwas Geduld.',
|
||||
'dh key warn1' => 'Bei schwachen Systemen oder Systeme mit wenig Entropie wird empfohlen lange Diffie-Hellman-Parameter über die Upload-Funktion hochzuladen.',
|
||||
'dh parameter' => 'Diffie-Hellman-Parameter',
|
||||
'dhcp advopt add' => 'DHCP Option hinzufügen',
|
||||
'dhcp advopt added' => 'DHCP Option hinzugefügt',
|
||||
'dhcp advopt blank value' => 'Wert für DHCP Option darf nicht leer sein',
|
||||
@@ -739,6 +741,7 @@
|
||||
'dns saved' => 'Erfolgreich gespeichert!',
|
||||
'dns saved txt' => 'Die beiden eingegebenen DNS-Server-Adressen wurde erfolgreich gespeichert.<br/>Um die Änderung wirksam zu machen, müssen Sie neustarten oder wiederverbinden!',
|
||||
'dns server' => 'DNS Server',
|
||||
'dns servers' => 'DNS-Server',
|
||||
'dns title' => 'Domain Name System',
|
||||
'dnsforward' => 'DNS-Weiterleitung',
|
||||
'dnsforward add a new entry' => 'Neuen Eintrag hinzufügen',
|
||||
@@ -767,6 +770,7 @@
|
||||
'download' => 'herunterladen',
|
||||
'download ca certificate' => 'CA-Zertifikat herunterladen',
|
||||
'download certificate' => 'Zertifikate herunterladen',
|
||||
'download dh parameter' => 'Diffie-Hellman-Parameter herunterladen',
|
||||
'download host certificate' => 'Host-Zertifikat herunterladen',
|
||||
'download new ruleset' => 'Neuen Regelsatz herunterladen',
|
||||
'download pkcs12 file' => 'PKCS12-Datei herunterladen',
|
||||
|
||||
@@ -657,6 +657,7 @@
|
||||
'december' => 'December',
|
||||
'deep scan directories' => 'Scan recursive',
|
||||
'def lease time' => 'Default Lease Time',
|
||||
'default' => 'Default',
|
||||
'default ip' => 'Default IP address',
|
||||
'default lease time' => 'Default lease time (mins):',
|
||||
'default networks' => 'Default networks',
|
||||
@@ -689,6 +690,7 @@
|
||||
'dh key warn' => 'Creating Diffie-Hellman parameters with lengths of 1024 or 2048 bits takes up to several minutes. Lengths of 3072 or 4096 bits might needs several hours. Please be patient.',
|
||||
'dh key warn1' => 'For weak systems or systems with little entropy, it is recommended to upload long Diffie-Hellman parameters by usage of the upload function.',
|
||||
'dh name is invalid' => 'Name is invalid, please use "dh1024.pem".',
|
||||
'dh parameter' => 'Diffie-Hellman parameters',
|
||||
'dhcp advopt add' => 'Add a DHCP option',
|
||||
'dhcp advopt added' => 'DHCP option added',
|
||||
'dhcp advopt blank value' => 'DHCP Option value cannot be empty.',
|
||||
@@ -764,6 +766,7 @@
|
||||
'dns saved' => 'Successfully saved!',
|
||||
'dns saved txt' => 'The two entered DNS server addresses have been saved successfully.<br />You have to reboot or reconnect that the changes have effect!',
|
||||
'dns server' => 'DNS Server',
|
||||
'dns servers' => 'DNS Servers',
|
||||
'dns title' => 'Domain Name System',
|
||||
'dnsforward' => 'DNS Forwarding',
|
||||
'dnsforward add a new entry' => 'Add a new entry',
|
||||
@@ -793,6 +796,7 @@
|
||||
'download' => 'download',
|
||||
'download ca certificate' => 'Download CA certificate',
|
||||
'download certificate' => 'Download certificate',
|
||||
'download dh parameter' => 'Download Diffie-Hellman parameters',
|
||||
'download host certificate' => 'Download host certificate',
|
||||
'download new ruleset' => 'Download new ruleset',
|
||||
'download pkcs12 file' => 'Download PKCS12 file',
|
||||
|
||||
@@ -57,8 +57,6 @@ DIR_CONF = $(LFS_BASEDIR)/config
|
||||
DIR_INFO = $(LFS_BASEDIR)/log
|
||||
DIR_TMP = /tmp
|
||||
|
||||
KGCC = gcc
|
||||
|
||||
###############################################################################
|
||||
# Common Macro Definitions
|
||||
###############################################################################
|
||||
|
||||
25
lfs/cacti
25
lfs/cacti
@@ -24,7 +24,7 @@
|
||||
|
||||
include Config
|
||||
|
||||
VER = 0.8.7h
|
||||
VER = 0.8.8b
|
||||
|
||||
THISAPP = cacti-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
@@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
PROG = cacti
|
||||
PAK_VER = 4
|
||||
PAK_VER = 5
|
||||
|
||||
DEPS = "netsnmpd mysql"
|
||||
|
||||
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = 58c9371341f49a190ae11a85118e598d
|
||||
$(DL_FILE)_MD5 = acb40deae073ca22e5c01a8e3ba389fb
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
@@ -54,7 +54,6 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
|
||||
md5 : $(subst %,%_MD5,$(objects))
|
||||
|
||||
|
||||
dist:
|
||||
@$(PAK)
|
||||
|
||||
@@ -78,6 +77,21 @@ $(subst %,%_MD5,$(objects)) :
|
||||
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
|
||||
|
||||
cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/cacti/cacti-0.8.8a-legal.patch
|
||||
cd $(DIR_APP) && patch -p1 -i $(DIR_SRC)/src/patches/cacti/cacti-0.8.8a-replace_treeview_by_jquery.jstree.patch
|
||||
cd $(DIR_APP) && patch -p2 -i $(DIR_SRC)/src/patches/cacti/cacti-0.8.8b-html-injection.patch
|
||||
cd $(DIR_APP) && patch -p2 -i $(DIR_SRC)/src/patches/cacti/cacti-0.8.8b-remote-command-execution.patch
|
||||
cd $(DIR_APP) && patch -p2 -i $(DIR_SRC)/src/patches/cacti/cacti-0.8.8b-rra-comments.patch
|
||||
cd $(DIR_APP) && patch -p2 -i $(DIR_SRC)/src/patches/cacti/cacti-0.8.8b-sanitize-variables.patch
|
||||
cd $(DIR_APP) && patch -p2 -i $(DIR_SRC)/src/patches/cacti/cacti-0.8.8b-sql-injection-shell-escaping.patch
|
||||
cp -vf \
|
||||
$(DIR_SRC)/config/cacti/d.gif \
|
||||
$(DIR_SRC)/config/cacti/d.png \
|
||||
$(DIR_SRC)/config/cacti/throbber.gif \
|
||||
$(DIR_APP)/include/js/jquery/themes/default/
|
||||
cd $(DIR_APP) && rm -rf include/treeview
|
||||
|
||||
@rm -rf /var/cacti /usr/share/cacti
|
||||
mkdir -pv /var/cacti /usr/share/cacti
|
||||
|
||||
@@ -92,6 +106,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
ln -s /var/cacti/log /usr/share/cacti/log
|
||||
ln -s /var/cacti/rra /usr/share/cacti/rra
|
||||
|
||||
-mkdir -pv /etc/logrotate.d
|
||||
install -v -m 644 $(DIR_SRC)/config/cacti/cacti.logrotate /etc/logrotate.d/cacti
|
||||
|
||||
chown -R nobody:nobody /var/cacti/rra /var/cacti/log
|
||||
@rm -rf $(DIR_APP)
|
||||
@$(POSTBUILD)
|
||||
|
||||
@@ -27,7 +27,7 @@ include Config
|
||||
VERSUFIX = ipfire$(KCFG)
|
||||
MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net/e1000e
|
||||
|
||||
VER = 2.5.4
|
||||
VER = 3.0.4
|
||||
|
||||
THISAPP = e1000e-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = 8a57fc73335bf1ab0e16a02ecccdae76
|
||||
$(DL_FILE)_MD5 = 2d8364cd2043ef5c71291a4ca8b8084e
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2009 Michael Tremer & Christian Schmidt #
|
||||
# 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 #
|
||||
@@ -24,17 +24,13 @@
|
||||
|
||||
include Config
|
||||
|
||||
VER = 0.9.7
|
||||
VER = 3.15
|
||||
|
||||
THISAPP = icecc-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.bz2
|
||||
THISAPP = hostname_$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
DIR_APP = $(DIR_SRC)/hostname
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
PROG = icecc
|
||||
PAK_VER = 3
|
||||
|
||||
DEPS = ""
|
||||
|
||||
###############################################################################
|
||||
# Top-level Rules
|
||||
@@ -44,7 +40,7 @@ objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = c06900c2f4011428d0d48826a04f74fb
|
||||
$(DL_FILE)_MD5 = f93c87de2517850de5f47234e3bcb563
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
@@ -54,9 +50,6 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
|
||||
md5 : $(subst %,%_MD5,$(objects))
|
||||
|
||||
dist:
|
||||
@$(PAK)
|
||||
|
||||
###############################################################################
|
||||
# Downloading, checking, md5sum
|
||||
###############################################################################
|
||||
@@ -76,12 +69,9 @@ $(subst %,%_MD5,$(objects)) :
|
||||
|
||||
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/icecream-rename-scheduler.patch
|
||||
cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/icecream-0.9.7-platform-arm.patch
|
||||
cd $(DIR_APP) && ./configure \
|
||||
--prefix=/opt/icecream
|
||||
cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
|
||||
cd $(DIR_APP) && make install
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/hostname-rh.patch
|
||||
cd $(DIR_APP) && make $(MAKETUNING)
|
||||
cd $(DIR_APP) && make install BINDIR=/bin
|
||||
@rm -rf $(DIR_APP)
|
||||
@$(POSTBUILD)
|
||||
137
lfs/icinga
Normal file
137
lfs/icinga
Normal file
@@ -0,0 +1,137 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007-2012 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# 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 = 1.11.4
|
||||
PLUGIN_VER = 2.0.2
|
||||
|
||||
THISAPP = icinga-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
PROG = icinga
|
||||
PAK_VER = 1
|
||||
|
||||
DEPS = ""
|
||||
|
||||
CFLAGS += -fno-strict-aliasing
|
||||
|
||||
###############################################################################
|
||||
# Top-level Rules
|
||||
###############################################################################
|
||||
|
||||
objects = $(DL_FILE) nagios-plugins-$(PLUGIN_VER).tar.gz
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
nagios-plugins-$(PLUGIN_VER).tar.gz = \
|
||||
$(DL_FROM)/nagios-plugins-$(PLUGIN_VER).tar.gz
|
||||
|
||||
$(DL_FILE)_MD5 = cfe64b91ec84f5431e53959e31ff07b5
|
||||
nagios-plugins-$(PLUGIN_VER).tar.gz_MD5 = 2f6d9c43adcf9f024175e48a44d099d4
|
||||
|
||||
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)
|
||||
@rm -rf $(DIR_SRC)/nagios-plugins-$(PLUGIN_VER) && cd $(DIR_SRC) && \
|
||||
tar axf $(DIR_DL)/nagios-plugins-$(PLUGIN_VER).tar.gz
|
||||
|
||||
# Compile core
|
||||
cd $(DIR_APP) && \
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc/icinga \
|
||||
--datadir=/usr/share/icinga \
|
||||
--datarootdir=/usr/share/icinga \
|
||||
--sbindir=/usr/share/icinga/cgi-bin \
|
||||
--localstatedir=/var/icinga \
|
||||
--libdir=/usr/lib/icinga \
|
||||
--libexecdir=/usr/lib/icinga/plugins \
|
||||
--with-lockfile=/var/run/icinga.pid \
|
||||
--with-httpd-conf=/etc/httpd/conf/conf.d \
|
||||
--with-icinga-user=nobody \
|
||||
--with-icinga-group=nobody \
|
||||
--enable-event-broker \
|
||||
--enable-embedded-perl \
|
||||
--disable-idoutils
|
||||
cd $(DIR_APP) && make all $(MAKETUNING)
|
||||
|
||||
# Compile plugins
|
||||
cd $(DIR_SRC)/nagios-plugins-$(PLUGIN_VER) && \
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--libexecdir=/usr/lib/icinga/plugins \
|
||||
--with-nagios-user=nobody \
|
||||
--with-nagios-group=nobody
|
||||
cd $(DIR_SRC)/nagios-plugins-$(PLUGIN_VER) && make $(MAKETUNING)
|
||||
|
||||
# Install core
|
||||
cd $(DIR_APP) && make \
|
||||
install install-init install-commandmode install-config \
|
||||
install-webconf install-eventhandlers
|
||||
rm -vf /etc/httpd/conf/conf.d/icinga.conf
|
||||
install -v -m 644 $(DIR_SRC)/config/icinga/icinga.conf \
|
||||
/etc/httpd/conf/vhosts.d/icinga.conf
|
||||
|
||||
# Install plugins
|
||||
cd $(DIR_SRC)/nagios-plugins-$(PLUGIN_VER) && make install
|
||||
|
||||
ln -svf /etc/rc.d/init.d/icinga /etc/rc.d/rc3.d/S67icinga
|
||||
ln -svf /etc/rc.d/init.d/icinga /etc/rc.d/rc0.d/K33icinga
|
||||
ln -svf /etc/rc.d/init.d/icinga /etc/rc.d/rc6.d/K33icinga
|
||||
|
||||
install -v -m 644 $(DIR_SRC)/config/backup/includes/icinga \
|
||||
/var/ipfire/backup/addons/includes/icinga
|
||||
|
||||
@rm -rf $(DIR_APP) $(DIR_SRC)/nagios-plugins-$(PLUGIN_VER)
|
||||
@$(POSTBUILD)
|
||||
4
lfs/igb
4
lfs/igb
@@ -27,7 +27,7 @@ include Config
|
||||
VERSUFIX = ipfire$(KCFG)
|
||||
MODPATH = /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net/ethernet/intel/igb/
|
||||
|
||||
VER = 5.0.6
|
||||
VER = 5.1.2
|
||||
|
||||
THISAPP = igb-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = 701717fbbba6065af4ff5138bd3a3a9c
|
||||
$(DL_FILE)_MD5 = c222b04f7e43afffc105d0d0db60c6c0
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
|
||||
@@ -74,6 +74,10 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/iputils-20020927-rh.patch
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/iputils-glibckernheaders.patch
|
||||
cd $(DIR_APP) && make ping
|
||||
cd $(DIR_APP) && install -m 0755 ping /usr/bin
|
||||
cd $(DIR_APP) && install -m 4755 ping /usr/bin
|
||||
|
||||
# Some scripts expect ping in /bin/ping.
|
||||
ln -svf ../usr/bin/ping /bin/ping
|
||||
|
||||
@rm -rf $(DIR_APP)
|
||||
@$(POSTBUILD)
|
||||
|
||||
31
lfs/linux
31
lfs/linux
@@ -24,10 +24,10 @@
|
||||
|
||||
include Config
|
||||
|
||||
VER = 3.10.39
|
||||
VER = 3.10.41
|
||||
|
||||
RPI_PATCHES = linux-3.10.38-grsec-1b49b45
|
||||
GRS_PATCHES = grsecurity-2.9.1-3.10.39-ipfire1.patch.xz
|
||||
GRS_PATCHES = grsecurity-2.9.1-3.10.41-ipfire1.patch.xz
|
||||
|
||||
THISAPP = linux-$(VER)
|
||||
DL_FILE = linux-$(VER).tar.xz
|
||||
@@ -36,7 +36,7 @@ DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
CFLAGS =
|
||||
CXXFLAGS =
|
||||
|
||||
PAK_VER = 44
|
||||
PAK_VER = 46
|
||||
DEPS = ""
|
||||
|
||||
VERSUFIX=ipfire$(KCFG)
|
||||
@@ -74,9 +74,9 @@ $(DL_FILE) = $(URL_IPFIRE)/$(DL_FILE)
|
||||
rpi-patches-$(RPI_PATCHES).patch.xz = $(URL_IPFIRE)/rpi-patches-$(RPI_PATCHES).patch.xz
|
||||
$(GRS_PATCHES) = $(URL_IPFIRE)/$(GRS_PATCHES)
|
||||
|
||||
$(DL_FILE)_MD5 = 74db7cc558a1a72ebf5044d286e2bc47
|
||||
$(DL_FILE)_MD5 = 08631db3e6b4328b0315f59ef3fa7b0a
|
||||
rpi-patches-$(RPI_PATCHES).patch.xz_MD5 = a7408e8bad57b4b2cb677dd5a0bfb7ff
|
||||
$(GRS_PATCHES)_MD5 = 6296b7ec4146544249075249e338ceb3
|
||||
$(GRS_PATCHES)_MD5 = de48891a35952a3c6de5beea694f7557
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
@@ -120,6 +120,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
# Layer7-patch
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10-layer7-filter.patch
|
||||
|
||||
# pie packet scheduler
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10.39-pie_packet_sch.patch
|
||||
|
||||
# Grsecurity-patches
|
||||
ifneq "$(KCFG)" "-headers"
|
||||
cd $(DIR_APP) && xz -c -d $(DIR_DL)/$(GRS_PATCHES) | patch -Np1
|
||||
@@ -250,26 +253,26 @@ else
|
||||
|
||||
# Cleanup kernel source
|
||||
cp $(DIR_SRC)/config/kernel/kernel.config.$(MACHINE)-$(VERSUFIX) $(DIR_APP)/.config
|
||||
cd $(DIR_APP) && make CC="$(KGCC)" oldconfig
|
||||
cd $(DIR_APP) && make CC="$(KGCC)" clean
|
||||
cd $(DIR_APP) && make oldconfig
|
||||
cd $(DIR_APP) && make clean
|
||||
cd $(DIR_APP) && sed -i -e 's/EXTRAVERSION\ =.*/EXTRAVERSION\ =\ -$(VERSUFIX)/' Makefile
|
||||
|
||||
ifeq "$(KCFG)" "-kirkwood"
|
||||
cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" uImage modules
|
||||
cd $(DIR_APP) && make $(MAKETUNING) uImage modules
|
||||
cd $(DIR_APP) && cp -v arch/arm/boot/uImage /boot/vmlinuz-$(VER)-$(VERSUFIX)
|
||||
cd $(DIR_APP) && cp -v arch/arm/boot/uImage /boot/uImage-$(VERSUFIX)
|
||||
else
|
||||
ifeq "$(KCFG)" "-multi"
|
||||
cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" zImage modules
|
||||
cd $(DIR_APP) && make $(MAKETUNING) zImage modules
|
||||
cd $(DIR_APP) && cp -v arch/arm/boot/zImage /boot/vmlinuz-$(VER)-$(VERSUFIX)
|
||||
cd $(DIR_APP) && cp -v arch/arm/boot/zImage /boot/zImage-$(VERSUFIX)
|
||||
else
|
||||
ifeq "$(KCFG)" "-rpi"
|
||||
cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" zImage modules
|
||||
cd $(DIR_APP) && make $(MAKETUNING) zImage modules
|
||||
cd $(DIR_APP) && cp -v arch/arm/boot/zImage /boot/vmlinuz-$(VER)-$(VERSUFIX)
|
||||
cd $(DIR_APP) && cp -v arch/arm/boot/zImage /boot/kernel.img
|
||||
else
|
||||
cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" bzImage modules
|
||||
cd $(DIR_APP) && make $(MAKETUNING) bzImage modules
|
||||
cd $(DIR_APP) && cp -v arch/i386/boot/bzImage /boot/vmlinuz-$(VER)-$(VERSUFIX)
|
||||
ln -sf vmlinuz-$(VER)-$(VERSUFIX) /boot/vmlinuz-$(VERSUFIX)
|
||||
endif
|
||||
@@ -278,11 +281,11 @@ endif
|
||||
cd $(DIR_APP) && cp -v System.map /boot/System.map-$(VER)-$(VERSUFIX)
|
||||
cd $(DIR_APP) && cp -v .config /boot/config-$(VER)-$(VERSUFIX)
|
||||
ln -sf System.map-$(VER)-$(VERSUFIX) /boot/System.map-$(VERSUFIX)
|
||||
cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) modules_install
|
||||
cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) firmware_install
|
||||
cd $(DIR_APP) && make $(MAKETUNING) modules_install
|
||||
cd $(DIR_APP) && make $(MAKETUNING) firmware_install
|
||||
|
||||
ifeq "$(MACHINE_TYPE)" "arm"
|
||||
cd $(DIR_APP) && make CC="$(KGCC)" $(MAKETUNING) dtbs
|
||||
cd $(DIR_APP) && make $(MAKETUNING) dtbs
|
||||
cd $(DIR_APP) && for f in $$(find arch/arm/boot/dts/ -name *.dtb); do \
|
||||
mkdir -p /boot/dtb-$(VER)-$(VERSUFIX) ; \
|
||||
install -m 644 $$f /boot/dtb-$(VER)-$(VERSUFIX)/ ; \
|
||||
|
||||
@@ -69,6 +69,7 @@ $(subst %,%_MD5,$(objects)) :
|
||||
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/net-tools-1.60-no-hostname.patch
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/$(THISAPP)-gcc34-3.patch
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/$(THISAPP)-kernel_headers-3.patch
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/$(THISAPP)-mii_ioctl-1.patch
|
||||
|
||||
2
lfs/qemu
2
lfs/qemu
@@ -33,7 +33,7 @@ DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
SUP_ARCH = i586
|
||||
PROG = qemu
|
||||
PAK_VER = 13
|
||||
PAK_VER = 14
|
||||
|
||||
DEPS = "sdl"
|
||||
|
||||
|
||||
8
lfs/sane
8
lfs/sane
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
|
||||
# Copyright (C) 2007-2014 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# 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 #
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
include Config
|
||||
|
||||
VER = 1.0.22
|
||||
VER = 1.0.24
|
||||
|
||||
THISAPP = sane-$(VER)
|
||||
DL_FILE = sane-backends-$(VER).tar.gz
|
||||
@@ -33,7 +33,7 @@ DIR_APP = $(DIR_SRC)/sane-backends-$(VER)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
|
||||
PROG = sane
|
||||
PAK_VER = 2
|
||||
PAK_VER = 3
|
||||
|
||||
DEPS = "libtiff"
|
||||
|
||||
@@ -45,7 +45,7 @@ objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = fadf56a60f4776bfb24491f66b617cf5
|
||||
$(DL_FILE)_MD5 = 1ca68e536cd7c1852322822f5f6ac3a4
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
|
||||
@@ -118,7 +118,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
--disable-wccpv2 \
|
||||
--enable-icap-client \
|
||||
--disable-esi \
|
||||
--enable-zph-qos
|
||||
--enable-zph-qos \
|
||||
--disable-arch-native
|
||||
|
||||
cd $(DIR_APP) && make $(MAKETUNING)
|
||||
cd $(DIR_APP) && make install
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
|
||||
# Copyright (C) 2007-2014 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# 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 #
|
||||
@@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
PROG = squidclamav
|
||||
PAK_VER = 17
|
||||
PAK_VER = 19
|
||||
|
||||
DEPS = "clamav"
|
||||
|
||||
@@ -78,6 +78,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/squidclamav-5.11-dont_use_ipv6.patch
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/squidclamav-5.11-squid-helper-protocol.patch
|
||||
cd $(DIR_APP) && ./configure --prefix=/usr
|
||||
cd $(DIR_APP) && make install
|
||||
install -v -m 664 $(DIR_CONF)/squidclamav/squidclamav.conf /etc/squidclamav.conf
|
||||
|
||||
@@ -70,6 +70,7 @@ $(subst %,%_MD5,$(objects)) :
|
||||
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/squidguard-1.4-squid-helper-protocol.patch
|
||||
cd $(DIR_APP) && ./configure --prefix=/usr --datadir=/usr/share \
|
||||
--sysconfdir=/etc --localstatedir=/var --infodir=/usr/info --mandir=/usr/man \
|
||||
--with-sg-config=/var/ipfire/urlfilter/squidGuard.conf \
|
||||
|
||||
7
lfs/sudo
7
lfs/sudo
@@ -24,7 +24,7 @@
|
||||
|
||||
include Config
|
||||
|
||||
VER = 1.8.10p1
|
||||
VER = 1.8.10p3
|
||||
|
||||
THISAPP = sudo-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = 1d9c2bc5aaf02608343d17b9a666e8e1
|
||||
$(DL_FILE)_MD5 = fcd8d0d9f9f0397d076ee901e242ed39
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
@@ -79,7 +79,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
--with-env-editor \
|
||||
--with-ignore-dot \
|
||||
--with-tty-tickets \
|
||||
--with-passpromt="[sudo] password for %p: "
|
||||
--with-passpromt="[sudo] password for %p: " \
|
||||
--without-pam
|
||||
cd $(DIR_APP) && make $(MAKETUNING)
|
||||
cd $(DIR_APP) && make install
|
||||
@rm -rf $(DIR_APP)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007-2013 IPFire Team <info@ipfire.org> #
|
||||
# Copyright (C) 2007-2014 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# 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 #
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
include Config
|
||||
|
||||
VER = 2.82
|
||||
VER = 2.83
|
||||
|
||||
THISAPP = transmission-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.xz
|
||||
@@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
PROG = transmission
|
||||
PAK_VER = 9
|
||||
PAK_VER = 10
|
||||
|
||||
DEPS = "libevent2"
|
||||
|
||||
@@ -46,7 +46,7 @@ objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = a5ef870c0410b12d10449c2d36fa4661
|
||||
$(DL_FILE)_MD5 = 4620cfbfefee2ce55a6fa12c3ec330a7
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
|
||||
# Copyright (C) 2007-2013 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# 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 #
|
||||
@@ -24,13 +24,23 @@
|
||||
|
||||
include Config
|
||||
|
||||
VER = 1.4.2
|
||||
|
||||
THISAPP = inetutils-$(VER)
|
||||
VER = 1.0.0
|
||||
THISAPP = vdr-vnsiserver5-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
|
||||
DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
PROG = vdr_vnsiserver5
|
||||
PAK_VER = 1
|
||||
|
||||
DEPS = "vdr"
|
||||
|
||||
VDRPLUGVER = 2.0.0
|
||||
|
||||
EXTRA_FLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
|
||||
CFLAGS += $(EXTRA_FLAGS)
|
||||
CXXFLAGS += $(EXTRA_FLAGS)
|
||||
|
||||
###############################################################################
|
||||
# Top-level Rules
|
||||
@@ -38,18 +48,21 @@ TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
|
||||
objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = df0909a586ddac2b7a0d62795eea4206
|
||||
$(DL_FILE)_MD5 = 3d1a0b21d11187e43a56f9e4cf7cb1c9
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
|
||||
|
||||
download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
download : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
|
||||
md5 : $(subst %,%_MD5,$(objects))
|
||||
|
||||
dist:
|
||||
@$(PAK)
|
||||
|
||||
###############################################################################
|
||||
# Downloading, checking, md5sum
|
||||
###############################################################################
|
||||
@@ -70,19 +83,17 @@ $(subst %,%_MD5,$(objects)) :
|
||||
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-gcc4_fixes-3.patch
|
||||
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-daemon_fixes-1.patch
|
||||
cd $(DIR_APP) && sed -i '/#include/a #include <stdlib.h>' libicmp/icmp_timestamp.c
|
||||
cd $(DIR_APP) && ./configure --prefix=/usr --libexecdir=/usr/sbin \
|
||||
--sysconfdir=/etc --localstatedir=/var \
|
||||
--mandir=/usr/share/man --infodir=/usr/share/info \
|
||||
--disable-logger --disable-syslogd --disable-telnet --disable-telnetd
|
||||
cd $(DIR_APP) && make $(MAKETUNING)
|
||||
cd $(DIR_APP) && make install
|
||||
mv -v /usr/bin/ping /bin
|
||||
|
||||
# Don't use whois command from here.
|
||||
rm -vf /usr/bin/whois
|
||||
cd $(DIR_APP) && make $(MAKE_TUNING) LIBDIR=. VDRDIR=/usr/lib/vdr \
|
||||
CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
|
||||
LOCALEDIR=$$(pwd)/locale all
|
||||
|
||||
-mkdir -pv /etc/vdr/plugins/vnsiserver5
|
||||
cd $(DIR_APP) && install -m 755 libvdr-vnsiserver5.so \
|
||||
/usr/lib/vdr/libvdr-vnsiserver5.so.$(VDRPLUGVER)
|
||||
ln -svf ../../svdrphosts.conf /etc/vdr/plugins/vnsiserver5/allowed_hosts.conf
|
||||
install -m 644 $(DIR_SRC)/config/vdr/plugins.d/vnsiserver5.conf \
|
||||
/etc/sysconfig/vdr-plugins.d
|
||||
|
||||
@rm -rf $(DIR_APP)
|
||||
@$(POSTBUILD)
|
||||
145
make.sh
145
make.sh
@@ -26,7 +26,7 @@ NAME="IPFire" # Software name
|
||||
SNAME="ipfire" # Short name
|
||||
VERSION="2.15" # Version number
|
||||
CORE="78" # Core Level (Filename)
|
||||
PAKFIRE_CORE="77" # Core Level (PAKFIRE)
|
||||
PAKFIRE_CORE="78" # Core Level (PAKFIRE)
|
||||
GIT_BRANCH=`git rev-parse --abbrev-ref HEAD` # Git Branch
|
||||
SLOGAN="www.ipfire.org" # Software slogan
|
||||
CONFIG_ROOT=/var/ipfire # Configuration rootdir
|
||||
@@ -34,16 +34,13 @@ NICE=10 # Nice level
|
||||
MAX_RETRIES=1 # prefetch/check loop
|
||||
BUILD_IMAGES=1 # Flash and Xen Downloader
|
||||
KVER=`grep --max-count=1 VER lfs/linux | awk '{ print $3 }'`
|
||||
MACHINE=`uname -m`
|
||||
GIT_TAG=$(git tag | tail -1) # Git Tag
|
||||
GIT_LASTCOMMIT=$(git log | head -n1 | cut -d" " -f2 |head -c8) # Last commit
|
||||
TOOLCHAINVER=7
|
||||
|
||||
BUILDMACHINE=$MACHINE
|
||||
if [ "$MACHINE" = "x86_64" ]; then
|
||||
BUILDMACHINE="i686";
|
||||
fi
|
||||
|
||||
# New architecture variables
|
||||
BUILD_ARCH="$(uname -m)"
|
||||
BUILDMACHINE="${BUILD_ARCH}"
|
||||
|
||||
# Debian specific settings
|
||||
if [ ! -e /etc/debian_version ]; then
|
||||
@@ -72,6 +69,12 @@ if [ -f .config ]; then
|
||||
. .config
|
||||
fi
|
||||
|
||||
if [ -n "${TARGET_ARCH}" ]; then
|
||||
configure_target "${TARGET_ARCH}"
|
||||
else
|
||||
configure_target "default"
|
||||
fi
|
||||
|
||||
if [ -z $EDITOR ]; then
|
||||
for i in nano emacs vi; do
|
||||
EDITOR=$(which $i 2>/dev/null)
|
||||
@@ -241,7 +244,7 @@ prepareenv() {
|
||||
|
||||
buildtoolchain() {
|
||||
local error=false
|
||||
case "${MACHINE}:$(uname -m)" in
|
||||
case "${TARGET_ARCH}:${BUILD_ARCH}" in
|
||||
# x86
|
||||
i586:i586|i586:i686|i586:x86_64)
|
||||
# These are working.
|
||||
@@ -352,7 +355,7 @@ buildbase() {
|
||||
lfsmake2 groff
|
||||
lfsmake2 gperf
|
||||
lfsmake2 gzip
|
||||
lfsmake2 inetutils
|
||||
lfsmake2 hostname
|
||||
lfsmake2 iproute2
|
||||
lfsmake2 jwhois
|
||||
lfsmake2 kbd
|
||||
@@ -399,61 +402,62 @@ buildipfire() {
|
||||
ipfiremake bc
|
||||
ipfiremake u-boot
|
||||
|
||||
if [ "${MACHINE_TYPE}" != "arm" ]; then
|
||||
case "${TARGET_ARCH}" in
|
||||
i586)
|
||||
# x86-pae (Native and new XEN) kernel build
|
||||
ipfiremake linux KCFG="-pae"
|
||||
# ipfiremake kvm-kmod KCFG="-pae"
|
||||
# ipfiremake v4l-dvb KCFG="-pae"
|
||||
# ipfiremake mISDN KCFG="-pae"
|
||||
ipfiremake cryptodev KCFG="-pae"
|
||||
# ipfiremake compat-drivers KCFG="-pae"
|
||||
# ipfiremake r8169 KCFG="-pae"
|
||||
# ipfiremake r8168 KCFG="-pae"
|
||||
# ipfiremake r8101 KCFG="-pae"
|
||||
ipfiremake e1000e KCFG="-pae"
|
||||
ipfiremake igb KCFG="-pae"
|
||||
|
||||
# x86-pae (Native and new XEN) kernel build
|
||||
ipfiremake linux KCFG="-pae"
|
||||
# ipfiremake kvm-kmod KCFG="-pae"
|
||||
# ipfiremake v4l-dvb KCFG="-pae"
|
||||
# ipfiremake mISDN KCFG="-pae"
|
||||
ipfiremake cryptodev KCFG="-pae"
|
||||
# ipfiremake compat-drivers KCFG="-pae"
|
||||
# ipfiremake r8169 KCFG="-pae"
|
||||
# ipfiremake r8168 KCFG="-pae"
|
||||
# ipfiremake r8101 KCFG="-pae"
|
||||
ipfiremake e1000e KCFG="-pae"
|
||||
ipfiremake igb KCFG="-pae"
|
||||
# x86 kernel build
|
||||
ipfiremake linux KCFG=""
|
||||
# ipfiremake kvm-kmod KCFG=""
|
||||
# ipfiremake v4l-dvb KCFG=""
|
||||
# ipfiremake mISDN KCFG=""
|
||||
ipfiremake cryptodev KCFG=""
|
||||
# ipfiremake compat-drivers KCFG=""
|
||||
# ipfiremake r8169 KCFG=""
|
||||
# ipfiremake r8168 KCFG=""
|
||||
# ipfiremake r8101 KCFG=""
|
||||
ipfiremake e1000e KCFG=""
|
||||
ipfiremake igb KCFG=""
|
||||
;;
|
||||
|
||||
# x86 kernel build
|
||||
ipfiremake linux KCFG=""
|
||||
# ipfiremake kvm-kmod KCFG=""
|
||||
# ipfiremake v4l-dvb KCFG=""
|
||||
# ipfiremake mISDN KCFG=""
|
||||
ipfiremake cryptodev KCFG=""
|
||||
# ipfiremake compat-drivers KCFG=""
|
||||
# ipfiremake r8169 KCFG=""
|
||||
# ipfiremake r8168 KCFG=""
|
||||
# ipfiremake r8101 KCFG=""
|
||||
ipfiremake e1000e KCFG=""
|
||||
ipfiremake igb KCFG=""
|
||||
armv5tel)
|
||||
# arm-rpi (Raspberry Pi) kernel build
|
||||
ipfiremake linux KCFG="-rpi"
|
||||
# ipfiremake v4l-dvb KCFG="-rpi"
|
||||
# ipfiremake mISDN KCFG="-rpi" NOPCI=1
|
||||
ipfiremake cryptodev KCFG="-rpi"
|
||||
# ipfiremake compat-drivers KCFG="-rpi"
|
||||
|
||||
else
|
||||
# arm-rpi (Raspberry Pi) kernel build
|
||||
ipfiremake linux KCFG="-rpi"
|
||||
# ipfiremake v4l-dvb KCFG="-rpi"
|
||||
# ipfiremake mISDN KCFG="-rpi" NOPCI=1
|
||||
ipfiremake cryptodev KCFG="-rpi"
|
||||
# ipfiremake compat-drivers KCFG="-rpi"
|
||||
# arm multi platform (Panda, Wandboard ...) kernel build
|
||||
ipfiremake linux KCFG="-multi"
|
||||
ipfiremake cryptodev KCFG="-multi"
|
||||
ipfiremake e1000e KCFG="-multi"
|
||||
ipfiremake igb KCFG="-multi"
|
||||
|
||||
# arm multi platform (Panda, Wandboard ...) kernel build
|
||||
ipfiremake linux KCFG="-multi"
|
||||
ipfiremake cryptodev KCFG="-multi"
|
||||
ipfiremake e1000e KCFG="-multi"
|
||||
ipfiremake igb KCFG="-multi"
|
||||
|
||||
# arm-kirkwood (Dreamplug, ICY-Box ...) kernel build
|
||||
ipfiremake linux KCFG="-kirkwood"
|
||||
# ipfiremake v4l-dvb KCFG="-kirkwood"
|
||||
# ipfiremake mISDN KCFG="-kirkwood"
|
||||
ipfiremake cryptodev KCFG="-kirkwood"
|
||||
# ipfiremake compat-drivers KCFG="-kirkwood"
|
||||
# ipfiremake r8169 KCFG="-kirkwood"
|
||||
# ipfiremake r8168 KCFG="-kirkwood"
|
||||
# ipfiremake r8101 KCFG="-kirkwood"
|
||||
# ipfiremake e1000e KCFG="-kirkwood"
|
||||
ipfiremake igb KCFG="-kirkwood"
|
||||
|
||||
fi
|
||||
# arm-kirkwood (Dreamplug, ICY-Box ...) kernel build
|
||||
ipfiremake linux KCFG="-kirkwood"
|
||||
# ipfiremake v4l-dvb KCFG="-kirkwood"
|
||||
# ipfiremake mISDN KCFG="-kirkwood"
|
||||
ipfiremake cryptodev KCFG="-kirkwood"
|
||||
# ipfiremake compat-drivers KCFG="-kirkwood"
|
||||
# ipfiremake r8169 KCFG="-kirkwood"
|
||||
# ipfiremake r8168 KCFG="-kirkwood"
|
||||
# ipfiremake r8101 KCFG="-kirkwood"
|
||||
# ipfiremake e1000e KCFG="-kirkwood"
|
||||
ipfiremake igb KCFG="-kirkwood"
|
||||
;;
|
||||
esac
|
||||
ipfiremake pkg-config
|
||||
ipfiremake linux-atm
|
||||
ipfiremake cpio
|
||||
@@ -669,8 +673,10 @@ buildipfire() {
|
||||
ipfiremake netpbm
|
||||
ipfiremake phpSANE
|
||||
ipfiremake tunctl
|
||||
ipfiremake netsnmpd
|
||||
ipfiremake nagios
|
||||
ipfiremake nagios_nrpe
|
||||
ipfiremake icinga
|
||||
ipfiremake ebtables
|
||||
ipfiremake directfb
|
||||
ipfiremake dfb++
|
||||
@@ -678,6 +684,7 @@ buildipfire() {
|
||||
ipfiremake ffmpeg
|
||||
ipfiremake vdr
|
||||
ipfiremake vdr_streamdev
|
||||
ipfiremake vdr_vnsiserver5
|
||||
ipfiremake vdr_vnsiserver3
|
||||
ipfiremake vdr_epgsearch
|
||||
ipfiremake vdr_dvbapi
|
||||
@@ -715,13 +722,11 @@ buildipfire() {
|
||||
ipfiremake perl-Sort-Naturally
|
||||
ipfiremake vdradmin
|
||||
ipfiremake miau
|
||||
ipfiremake netsnmpd
|
||||
ipfiremake perl-DBI
|
||||
ipfiremake perl-DBD-mysql
|
||||
ipfiremake perl-DBD-SQLite
|
||||
ipfiremake perl-File-ReadBackwards
|
||||
ipfiremake cacti
|
||||
ipfiremake icecc
|
||||
ipfiremake openvmtools
|
||||
ipfiremake nagiosql
|
||||
ipfiremake iftop
|
||||
@@ -898,6 +903,22 @@ ipfirepackages() {
|
||||
rm -rf $BASEDIR/build/install/packages/*
|
||||
}
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
case "${1}" in
|
||||
--target=*)
|
||||
configure_target "${1#--target=}"
|
||||
;;
|
||||
-*)
|
||||
exiterror "Unknown configuration option: ${1}"
|
||||
;;
|
||||
*)
|
||||
# Found a command, so exit options parsing.
|
||||
break
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
# See what we're supposed to do
|
||||
case "$1" in
|
||||
build)
|
||||
|
||||
@@ -120,10 +120,10 @@ iptables_init() {
|
||||
iptables -N IPTVFORWARD
|
||||
iptables -A FORWARD -j IPTVFORWARD
|
||||
|
||||
# filtering from GUI
|
||||
iptables -N GUIINPUT
|
||||
iptables -A INPUT -j GUIINPUT
|
||||
iptables -A GUIINPUT -p icmp --icmp-type 8 -j ACCEPT
|
||||
# Allow to ping the firewall.
|
||||
iptables -N ICMPINPUT
|
||||
iptables -A INPUT -j ICMPINPUT
|
||||
iptables -A ICMPINPUT -p icmp --icmp-type 8 -j ACCEPT
|
||||
|
||||
# Accept everything on loopback
|
||||
iptables -N LOOPBACK
|
||||
@@ -179,7 +179,10 @@ iptables_init() {
|
||||
iptables -t nat -A POSTROUTING -j IPSECNAT
|
||||
|
||||
# localhost and ethernet.
|
||||
iptables -A INPUT -i $GREEN_DEV -m conntrack --ctstate NEW -j ACCEPT ! -p icmp
|
||||
# Always allow accessing the web GUI from GREEN.
|
||||
iptables -N GUIINPUT
|
||||
iptables -A INPUT -j GUIINPUT
|
||||
iptables -A GUIINPUT -i "${GREEN_DEV}" -p tcp --dport 444 -j ACCEPT
|
||||
|
||||
# WIRELESS chains
|
||||
iptables -N WIRELESSINPUT
|
||||
|
||||
@@ -1,62 +0,0 @@
|
||||
#!/bin/sh
|
||||
########################################################################
|
||||
# Begin $rc_base/init.d/icecream
|
||||
#
|
||||
# Description : This is a script that starts the icecream daemon.
|
||||
#
|
||||
# Authors : Michael Tremer (mitch@ipfire.org)
|
||||
#
|
||||
# Version : 01.00
|
||||
#
|
||||
# Notes :
|
||||
#
|
||||
########################################################################
|
||||
|
||||
. /etc/sysconfig/rc
|
||||
. ${rc_functions}
|
||||
|
||||
#SCHEDULER=minerva.ipfire.org
|
||||
ENABLE_SCHEDULER=on
|
||||
JOBS=8
|
||||
|
||||
case "${1}" in
|
||||
start)
|
||||
boot_mesg "Starting Icecream Daemon..."
|
||||
ARGS="-d -m ${JOBS}"
|
||||
if [ -n "${SCHEDULER}" ]; then
|
||||
ARGS="${ARGS} -s ${SCHEDULER}"
|
||||
fi
|
||||
/opt/icecream/sbin/iceccd ${ARGS}
|
||||
evaluate_retval
|
||||
|
||||
if [ "${ENABLE_SCHEDULER}" = "on" ]; then
|
||||
/opt/icecream/sbin/icecc-scheduler -d
|
||||
fi
|
||||
;;
|
||||
|
||||
stop)
|
||||
boot_mesg "Stopping Icecream Daemon..."
|
||||
killproc /opt/icecream/sbin/iceccd
|
||||
|
||||
if [ "${ENABLE_SCHEDULER}" = "on" ]; then
|
||||
killproc /opt/icecream/sbin/icecc-scheduler
|
||||
fi
|
||||
;;
|
||||
|
||||
restart)
|
||||
${0} stop
|
||||
sleep 1
|
||||
${0} start
|
||||
;;
|
||||
|
||||
status)
|
||||
statusproc /opt/icecream/sbin/iceccd
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Usage: ${0} {start|stop|reload|restart|status}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# End $rc_base/init.d/icecream
|
||||
@@ -43,10 +43,7 @@ case "$1" in
|
||||
(
|
||||
sleep 3
|
||||
pid=$(cat /var/run/sshd.pid 2>/dev/null)
|
||||
[ -n "${pid}" ] && [ -e "/proc/${pid}/oom_score_adj" ] && \
|
||||
echo "-16" > "/proc/${pid}/oom_score_adj" || \
|
||||
[ -e "/proc/${pid}/oom_adj" ] && \
|
||||
echo "-16" > "/proc/${pid}/oom_adj"
|
||||
[ -n "${pid}" ] && echo "-16" > "/proc/${pid}/oom_score_adj"
|
||||
) &
|
||||
;;
|
||||
|
||||
|
||||
@@ -321,10 +321,10 @@ int main(int argc, char *argv[])
|
||||
swap_file = memory / 4;
|
||||
|
||||
/* Calculating Root-Size dependend of Max Disk Space */
|
||||
if ( disk < 756 )
|
||||
root_partition = 200;
|
||||
else if ( disk >= 756 && disk <= 3072 )
|
||||
root_partition = 512;
|
||||
if ( disk < 2048 )
|
||||
root_partition = 1024;
|
||||
else if ( disk >= 2048 && disk <= 3072 )
|
||||
root_partition = 1536;
|
||||
else
|
||||
root_partition = 2048;
|
||||
|
||||
|
||||
@@ -23,7 +23,4 @@
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
extract_files
|
||||
mysqladmin --user=root -pmysqlfire create cacti
|
||||
mysql --user=root -pmysqlfire cacti < /usr/share/cacti/cacti.sql
|
||||
mysql --user=root -pmysqlfire -e "GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser';" mysql
|
||||
/etc/init.d/apache restart
|
||||
|
||||
@@ -22,5 +22,6 @@
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
stop_service vdr
|
||||
extract_files
|
||||
start_service --delay 90 --background icecream
|
||||
start_service --background vdr
|
||||
@@ -22,5 +22,6 @@
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
stop_service icecream
|
||||
stop_service vdr
|
||||
remove_files
|
||||
start_service vdr --background
|
||||
@@ -22,5 +22,5 @@
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
/etc/init.d/icecream stop
|
||||
./uninstall.sh
|
||||
./install.sh
|
||||
8166
src/patches/cacti/cacti-0.8.8a-legal.patch
Normal file
8166
src/patches/cacti/cacti-0.8.8a-legal.patch
Normal file
File diff suppressed because one or more lines are too long
@@ -0,0 +1,607 @@
|
||||
Description: treeview has a license issue, cacti upstream is going to replace it
|
||||
with functionality from jquery.jstree.
|
||||
.
|
||||
This patch implements the changes needed for an upstream layout where the
|
||||
necessary code is in cacti/include/js/jquery/ but the code in that path is
|
||||
not included in this patch.
|
||||
.
|
||||
The necessary jquery scripts and theme info can come from cacti upstream and from
|
||||
debian packages (libjs-jquery and libjs-jquery-cookie) The version used when
|
||||
creating this patch can be found here:
|
||||
http://svn.cacti.net/viewvc/cacti/branches/0.8.9/include/js/jquery/jquery.js?pathrev=7324
|
||||
http://svn.cacti.net/viewvc/cacti/branches/0.8.9/include/js/jquery/jquery.jstree.js?pathrev=7324
|
||||
http://svn.cacti.net/viewvc/cacti/branches/main/include/js/jquery/themes/default/?pathrev=7324
|
||||
http://anonscm.debian.org/gitweb/?p=pkg-javascript/jquery-goodies.git;a=blob;f=cookie/jquery.cookie.js;hb=c50e1a2d599cb48893e8d77470e71e83e44dfdb5
|
||||
.
|
||||
This patch does NOT implement the changes needed for the Debian package of
|
||||
cacti.
|
||||
.
|
||||
This patch was updated with the patch from Jan Zalesak <zalesak@jaw.cz> in
|
||||
http://bugs.debian.org/702690 which was further improved to also cover
|
||||
lib/graph_export.php and to keep tag alignment consistent.
|
||||
Bug: http://bugs.cacti.net/view.php?id=2228
|
||||
Bug-Debian: http://bugs.debian.org/679980
|
||||
Author: Paul Gevers <elbrus@debian.org>
|
||||
Date: Sun, 31 Mar 2013 11:59:05 +0200
|
||||
|
||||
--- a/include/top_graph_header.php
|
||||
+++ b/include/top_graph_header.php
|
||||
@@ -84,8 +84,9 @@
|
||||
<link href="<?php echo $config['url_path']; ?>include/main.css" type="text/css" rel="stylesheet">
|
||||
<link href="<?php echo $config['url_path']; ?>images/favicon.ico" rel="shortcut icon"/>
|
||||
<script type="text/javascript" src="<?php echo $config['url_path']; ?>include/layout.js"></script>
|
||||
- <script type="text/javascript" src="<?php echo $config['url_path']; ?>include/treeview/ua.js"></script>
|
||||
- <script type="text/javascript" src="<?php echo $config['url_path']; ?>include/treeview/ftiens4.js"></script>
|
||||
+ <script type="text/javascript" src="<?php echo $config['url_path']; ?>include/js/jquery/jquery.js" language="javascript"></script>
|
||||
+ <script type="text/javascript" src="<?php echo $config['url_path']; ?>include/js/jquery/jquery.cookie.js" language="javascript"></script>
|
||||
+ <script type="text/javascript" src="<?php echo $config['url_path']; ?>include/js/jquery/jquery.jstree.js"></script>
|
||||
<script type="text/javascript" src="<?php echo $config['url_path']; ?>include/jscalendar/calendar.js"></script>
|
||||
<script type="text/javascript" src="<?php echo $config['url_path']; ?>include/jscalendar/lang/calendar-en.js"></script>
|
||||
<script type="text/javascript" src="<?php echo $config['url_path']; ?>include/jscalendar/calendar-setup.js"></script>
|
||||
@@ -178,7 +179,6 @@
|
||||
<td valign="top" style="padding: 5px; border-right: #aaaaaa 1px solid;background-repeat:repeat-y;background-color:#efefef;" bgcolor='#efefef' width='<?php print htmlspecialchars(read_graph_config_option("default_dual_pane_width"));?>' class='noprint'>
|
||||
<table border=0 cellpadding=0 cellspacing=0><tr><td><a style="font-size:7pt;text-decoration:none;color:silver" href="http://www.treemenu.net/" target=_blank></a></td></tr></table>
|
||||
<?php grow_dhtml_trees(); ?>
|
||||
- <script type="text/javascript">initializeDocument();</script>
|
||||
|
||||
<?php if (isset($_GET["select_first"])) { ?>
|
||||
<script type="text/javascript">
|
||||
--- a/lib/graph_export.php
|
||||
+++ b/lib/graph_export.php
|
||||
@@ -1365,15 +1365,6 @@
|
||||
/* create the treeview representation for the html data */
|
||||
grow_dhtml_trees_export($fp,$tree_id);
|
||||
|
||||
- fwrite($fp,"<script type='text/javascript'>initializeDocument();</script>\n");
|
||||
- fwrite($fp,"<script type='text/javascript'>\n");
|
||||
- fwrite($fp,"var obj;\n");
|
||||
- fwrite($fp,"obj = findObj(1);\n");
|
||||
- fwrite($fp,"if (!obj.isOpen) {\n");
|
||||
- fwrite($fp,"clickOnNode(1);\n");
|
||||
- fwrite($fp,"}\n");
|
||||
- fwrite($fp,"clickOnLink(2,'','main');\n");
|
||||
- fwrite($fp,"</script>\n");
|
||||
fwrite($fp,"</td>\n");
|
||||
fwrite($fp,"<td valign='top'>\n");
|
||||
}
|
||||
@@ -1383,16 +1374,7 @@
|
||||
include_once($config["library_path"] . "/tree.php");
|
||||
include_once($config["library_path"] . "/data_query.php");
|
||||
|
||||
- fwrite($fp, "<script type='text/javascript'>\n");
|
||||
- fwrite($fp, "<!--
|
||||
- USETEXTLINKS = 1
|
||||
- STARTALLOPEN = 0
|
||||
- USEFRAMES = 0
|
||||
- USEICONS = 0
|
||||
- WRAPTEXT = 1
|
||||
- ICONPATH = 'treeview/'
|
||||
- PERSERVESTATE = 1
|
||||
- HIGHLIGHT = 1\n");
|
||||
+ fwrite($fp, "<div id=\"jtree\">\n");
|
||||
|
||||
if (read_config_option("export_tree_isolation") == "off") {
|
||||
$dhtml_tree_base = 0;
|
||||
@@ -1413,9 +1395,34 @@
|
||||
}
|
||||
}
|
||||
|
||||
- fwrite($fp,"foldersTree.treeID = \"t2\"
|
||||
- //-->\n
|
||||
- </script>\n");
|
||||
+ fwrite($fp, "</div>\n");
|
||||
+ fwrite($fp, "<script type=\"text/javascript\">\n");
|
||||
+ fwrite($fp, "$(function () {
|
||||
+ $(\"#jtree\")
|
||||
+ .jstree({
|
||||
+ \"plugins\" : [\"ui\",\"themes\",\"html_data\",\"cookies\"],
|
||||
+ \"themes\" : {\"icons\" : false,
|
||||
+ \"url\" : \"./js/style.css\"},
|
||||
+ \"cookies\" : {
|
||||
+ \"save_opened\" : \"Cacti_jstree_open\",
|
||||
+ \"save_selected\" : \"Cacti_jstree_select\"
|
||||
+ }
|
||||
+
|
||||
+ })
|
||||
+
|
||||
+ // Make sure that the nodes are actually used as links
|
||||
+ // We need reselect to prevent endless loops
|
||||
+ // https://groups.google.com/d/topic/jstree/j6XNq9hQdeA/discussion
|
||||
+ .bind(\"reselect.jstree\", function (e, data) {
|
||||
+ data.inst.get_container().bind(\"select_node.jstree\", function (e, data) {
|
||||
+ // data.rstl.obj is the object that was selected.
|
||||
+ document.location.href = data.rslt.obj.children(\"a\").attr(\"href\");
|
||||
+ });
|
||||
+ });
|
||||
+
|
||||
+});\n");
|
||||
+ fwrite($fp, "</script>\n");
|
||||
+
|
||||
}
|
||||
|
||||
/* get_graph_tree_array_export - returns a list of graph trees taking permissions into account if
|
||||
@@ -1478,8 +1485,7 @@
|
||||
$dhtml_tree = array();
|
||||
$dhtml_tree[0] = $start;
|
||||
$dhtml_tree[1] = read_graph_config_option("expand_hosts");
|
||||
- $dhtml_tree[2] = "foldersTree = gFld(\"\", \"\")\n";
|
||||
- $i = 2;
|
||||
+ $i = 1;
|
||||
|
||||
$tree_list = get_graph_tree_array_export();
|
||||
|
||||
@@ -1499,7 +1505,6 @@
|
||||
if (((read_config_option("export_tree_isolation") == "on") && ($tree_id == $tree["id"])) ||
|
||||
(read_config_option("export_tree_isolation") == "off")) {
|
||||
|
||||
- $i++;
|
||||
|
||||
$hier_sql = "SELECT DISTINCT
|
||||
graph_tree_items.id,
|
||||
@@ -1522,19 +1527,53 @@
|
||||
$dhtml_tree_id = 0;
|
||||
|
||||
if (sizeof($hierarchy) > 0) {
|
||||
+ $last_tier = 1;
|
||||
+ $openli = false;
|
||||
+ $lasthost = false;
|
||||
+ $opentree = false;
|
||||
foreach ($hierarchy as $leaf) {
|
||||
if ($dhtml_tree_id <> $tree["id"]) {
|
||||
- $dhtml_tree[$i] = "ou0 = insFld(foldersTree, gFld(\"" . get_tree_name($tree["id"]) . "\", \"" . clean_up_export_name(get_tree_name($tree["id"])) . "_leaf.html\"))\n";
|
||||
+ if ($opentree) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t</ul>\n\t\t</li>\n\t</ul>\n";
|
||||
+ }
|
||||
+ $i++;
|
||||
+ $clean_id = clean_up_export_name(get_tree_name($tree["id"]));
|
||||
+ $dhtml_tree[$i] = "\t<ul>\n\t\t<li id=\"" . $clean_id . "\"><a href=\"" . $clean_id . "_leaf.html\">" . get_tree_name($tree["id"]) . "</a>\n\t\t\t<ul>\n";
|
||||
+ $opentree = true;
|
||||
}
|
||||
$dhtml_tree_id = $tree["id"];
|
||||
|
||||
- $i++;
|
||||
$tier = tree_tier($leaf["order_key"]);
|
||||
|
||||
if ($leaf["host_id"] > 0) { //It's a host
|
||||
- $dhtml_tree[$i] = "ou" . ($tier) . " = insFld(ou" . ($tier-1) . ", gFld(\"Host: " . $leaf["hostname"] . "\", \"" . clean_up_export_name($leaf["hostname"] . "_" . $leaf["id"]) . ".html\"))\n";
|
||||
+ if ($tier > $last_tier) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t<ul>\n";
|
||||
+ } elseif ($tier < $last_tier) {
|
||||
+ if (!$lasthost) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t</li>\n";
|
||||
+ }
|
||||
+ for ($x = $tier; $x < $last_tier; $x++) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t</ul>\n\t\t\t\t</li>\n";
|
||||
+ $openli = false;
|
||||
+ }
|
||||
+ } elseif ($openli && !$lasthost) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t</li>\n";
|
||||
+ $openli = false;
|
||||
+ }
|
||||
+ $last_tier = $tier;
|
||||
+ $lasthost = true;
|
||||
+ $i++;
|
||||
+ $clean_id = clean_up_export_name($leaf["hostname"] . "_" . $leaf["id"]);
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t<li id=\"" . $clean_id . "\"><a href=\"" . $clean_id . ".html\">Host: " . htmlspecialchars($leaf["hostname"]) . "</a>\n";
|
||||
|
||||
if (read_config_option("export_tree_expand_hosts") == "on") {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t<ul>\n";
|
||||
if ($leaf["host_grouping_type"] == HOST_GROUPING_GRAPH_TEMPLATE) {
|
||||
$graph_templates = db_fetch_assoc("SELECT
|
||||
graph_templates.id,
|
||||
@@ -1552,7 +1591,8 @@
|
||||
if (sizeof($graph_templates) > 0) {
|
||||
foreach ($graph_templates as $graph_template) {
|
||||
$i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+1) . " = insFld(ou" . ($tier) . ", gFld(\" " . $graph_template["name"] . "\", \"" . clean_up_export_name($leaf["hostname"] . "_gt_" . $leaf["id"]) . "_" . $graph_template["id"] . ".html\"))\n";
|
||||
+ $clean_id = clean_up_export_name($leaf["hostname"] . "_gt_" . $leaf["id"] . "_" . $graph_template["id"]);
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t<li id=\"" . $clean_id . "\"><a href=\"" . $clean_id . ".html\">" . htmlspecialchars($graph_template["name"]) . "</a></li>\n";
|
||||
}
|
||||
}
|
||||
}else if ($leaf["host_grouping_type"] == HOST_GROUPING_DATA_QUERY_INDEX) {
|
||||
@@ -1567,36 +1607,77 @@
|
||||
|
||||
array_push($data_queries, array(
|
||||
"id" => "0",
|
||||
- "name" => "Graph Template Based"
|
||||
+ "name" => "Non Query Based"
|
||||
));
|
||||
|
||||
if (sizeof($data_queries) > 0) {
|
||||
- foreach ($data_queries as $data_query) {
|
||||
- $i++;
|
||||
-
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+1) . " = insFld(ou" . ($tier) . ", gFld(\" " . $data_query["name"] . "\", \"" . clean_up_export_name($leaf["hostname"] . "_dq_" . $leaf["title"] . "_" . $leaf["id"]) . "_" . $data_query["id"] . ".html\"))\n";
|
||||
+ foreach ($data_queries as $data_query) {
|
||||
+ $i++;
|
||||
+ $clean_id = clean_up_export_name($leaf["hostname"] . "_dq_" . $leaf["title"] . "_" . $leaf["id"] . "_" . $data_query["id"]);
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t<li id=\"" . $clean_id . "\"><a href=\"" . $clean_id . ".html\">" . htmlspecialchars($data_query["name"]) . "</a>\n";
|
||||
|
||||
- /* fetch a list of field names that are sorted by the preferred sort field */
|
||||
- $sort_field_data = get_formatted_data_query_indexes($leaf["host_id"], $data_query["id"]);
|
||||
+ /* fetch a list of field names that are sorted by the preferred sort field */
|
||||
+ $sort_field_data = get_formatted_data_query_indexes($leaf["host_id"], $data_query["id"]);
|
||||
|
||||
- if ($data_query["id"] > 0) {
|
||||
- while (list($snmp_index, $sort_field_value) = each($sort_field_data)) {
|
||||
+ if ($data_query["id"] > 0) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t\t<ul>\n";
|
||||
+ while (list($snmp_index, $sort_field_value) = each($sort_field_data)) {
|
||||
+ $i++;
|
||||
+ $clean_id = clean_up_export_name($leaf["hostname"] . "_dqi_" . $leaf["id"] . "_" . $data_query["id"] . "_" . $snmp_index);
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t\t\t<li id=\"" . $clean_id . "\"><a href=\"" . $clean_id . ".html\">" . htmlspecialchars($sort_field_value) . "</a></li>\n";
|
||||
+ }
|
||||
$i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+2) . " = insFld(ou" . ($tier+1) . ", gFld(\" " . $sort_field_value . "\", \"" . clean_up_export_name($leaf["hostname"] . "_dqi_" . $leaf["title"] . "_" . $leaf["id"]) . "_" . $data_query["id"] . "_" . $snmp_index . ".html\"))\n";
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t\t</ul>\n";
|
||||
}
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t</li>\n";
|
||||
}
|
||||
}
|
||||
- }
|
||||
}
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t</ul>\n";
|
||||
}
|
||||
- }else {
|
||||
- $dhtml_tree[$i] = "ou" . ($tier) . " = insFld(ou" . ($tier-1) . ", gFld(\"" . $leaf["title"] . "\", \"" . clean_up_export_name(get_tree_name($tree["id"]) . "_" . $leaf["title"] . "_" . $leaf["id"]) . "_leaf.html\"))\n";
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t</li>\n";
|
||||
+ }else { //It's not a host
|
||||
+ if ($tier > $last_tier) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t<ul>\n";
|
||||
+ } elseif ($tier < $last_tier) {
|
||||
+ if (!$lasthost) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "</li>\n";
|
||||
+ }
|
||||
+ for ($x = $tier; $x < $last_tier; $x++) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t</ul>\n\t\t\t\t</li>\n";
|
||||
+ $openli = false;
|
||||
+ }
|
||||
+ } elseif ($openli && !$lasthost) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "</li>\n";
|
||||
+ $openli = false;
|
||||
+ }
|
||||
+ $last_tier = $tier;
|
||||
+ $i++;
|
||||
+ $clean_id = clean_up_export_name(get_tree_name($tree["id"]) . "_" . $leaf["title"] . "_" . $leaf["id"]);
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t<li id=\"" . $clean_id . "\"><a href=\"" . $clean_id . "_leaf.html\">" . htmlspecialchars($leaf["title"]) . "</a>\n";
|
||||
+ $openli = true;
|
||||
+ $lasthost = false;
|
||||
}
|
||||
}
|
||||
+ for ($x = $last_tier; $x > 1; $x--) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t</ul>\n\t\t\t\t</li>\n";
|
||||
+ }
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t</ul>\n\t\t</li>\n\t</ul>\n";
|
||||
}else{
|
||||
if ($dhtml_tree_id <> $tree["id"]) {
|
||||
- $dhtml_tree[$i] = "ou0 = insFld(foldersTree, gFld(\"" . get_tree_name($tree["id"]) . "\", \"" . clean_up_export_name(get_tree_name($tree["id"])) . "_leaf.html\"))\n";
|
||||
$i++;
|
||||
+ $clean_id = clean_up_export_name(get_tree_name($tree["id"]));
|
||||
+ $dhtml_tree[$i] = "\t<ul>\n\t\t<li id=\"" . $clean_id . "_leaf\"><a href=\"" . $clean_id . "_leaf.html\">" . get_tree_name($tree["id"]) . "</a></li>\n\t</ul>";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1612,10 +1693,10 @@
|
||||
$dir - the export directory where graphs will either be staged or located.
|
||||
*/
|
||||
function create_export_directory_structure($cacti_root_path, $dir) {
|
||||
- /* create the treeview sub-directory */
|
||||
- if (!is_dir("$dir/treeview")) {
|
||||
- if (!mkdir("$dir/treeview", 0755)) {
|
||||
- export_fatal("Create directory '" . $dir . "/treeview' failed. Can not continue");
|
||||
+ /* create the jquery sub-directory */
|
||||
+ if (!is_dir("$dir/js")) {
|
||||
+ if (!mkdir("$dir/js", 0755)) {
|
||||
+ export_fatal("Create directory '" . $dir . "/js' failed. Can not continue");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1626,8 +1707,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
- $treeview_dir = $dir . "/treeview";
|
||||
-
|
||||
/* css */
|
||||
copy("$cacti_root_path/include/main.css", "$dir/main.css");
|
||||
|
||||
@@ -1639,18 +1718,15 @@
|
||||
copy("$cacti_root_path/images/shadow_gray.gif", "$dir/shadow_gray.gif");
|
||||
|
||||
/* java scripts for the tree */
|
||||
- copy("$cacti_root_path/include/treeview/ftiens4_export.js", "$treeview_dir/ftiens4.js");
|
||||
- copy("$cacti_root_path/include/treeview/ua.js", "$treeview_dir/ua.js");
|
||||
-
|
||||
- /* images for the tree */
|
||||
- copy("$cacti_root_path/include/treeview/ftv2blank.gif", "$treeview_dir/ftv2blank.gif");
|
||||
- copy("$cacti_root_path/include/treeview/ftv2lastnode.gif", "$treeview_dir/ftv2lastnode.gif");
|
||||
- copy("$cacti_root_path/include/treeview/ftv2mlastnode.gif", "$treeview_dir/ftv2mlastnode.gif");
|
||||
- copy("$cacti_root_path/include/treeview/ftv2mnode.gif", "$treeview_dir/ftv2mnode.gif");
|
||||
- copy("$cacti_root_path/include/treeview/ftv2node.gif", "$treeview_dir/ftv2node.gif");
|
||||
- copy("$cacti_root_path/include/treeview/ftv2plastnode.gif", "$treeview_dir/ftv2plastnode.gif");
|
||||
- copy("$cacti_root_path/include/treeview/ftv2pnode.gif", "$treeview_dir/ftv2pnode.gif");
|
||||
- copy("$cacti_root_path/include/treeview/ftv2vertline.gif", "$treeview_dir/ftv2vertline.gif");
|
||||
+ copy("$cacti_root_path/include/js/jquery/jquery.js", "$dir/js/jquery.js");
|
||||
+ copy("$cacti_root_path/include/js/jquery/jquery.jstree.js", "$dir/js/jquery.jstree.js");
|
||||
+ copy("$cacti_root_path/include/js/jquery/jquery.cookie.js", "$dir/js/jquery.cookie.js");
|
||||
+
|
||||
+ /* theme info for java scripts */
|
||||
+ copy("$cacti_root_path/include/js/jquery/themes/default/style.css", "$dir/js/style.css");
|
||||
+ copy("$cacti_root_path/include/js/jquery/themes/default/d.png", "$dir/js/d.png");
|
||||
+ copy("$cacti_root_path/include/js/jquery/themes/default/d.gif", "$dir/js/d.gif");
|
||||
+ copy("$cacti_root_path/include/js/jquery/themes/default/throbber.gif", "$dir/js/throbber.gif");
|
||||
}
|
||||
|
||||
function get_host_description($host_id) {
|
||||
@@ -1738,8 +1814,9 @@
|
||||
<meta http-equiv=refresh content='300'; url='index.html'>
|
||||
<meta http-equiv=Pragma content=no-cache>
|
||||
<meta http-equiv=cache-control content=no-cache>
|
||||
- <script type=\"text/javascript\" src=\"./treeview/ua.js\"></script>
|
||||
- <script type=\"text/javascript\" src=\"./treeview/ftiens4.js\"></script>
|
||||
+ <script type=\"text/javascript\" src=\"./js/jquery.js\" language=\"javascript\"></script>
|
||||
+ <script type=\"text/javascript\" src=\"./js/jquery.cookie.js\" language=\"javascript\"></script>
|
||||
+ <script type=\"text/javascript\" src=\"./js/jquery.jstree.js\" language=\"javascript\"></script>
|
||||
</head>
|
||||
<body>
|
||||
<table style='width:100%;height:100%;' cellspacing='0' cellpadding='0'>
|
||||
--- a/lib/html_tree.php
|
||||
+++ b/lib/html_tree.php
|
||||
@@ -495,17 +495,9 @@
|
||||
include_once($config["library_path"] . "/data_query.php");
|
||||
|
||||
?>
|
||||
- <script type="text/javascript">
|
||||
- <!--
|
||||
- USETEXTLINKS = 1
|
||||
- STARTALLOPEN = 0
|
||||
- USEFRAMES = 0
|
||||
- USEICONS = 0
|
||||
- WRAPTEXT = 1
|
||||
- PERSERVESTATE = 1
|
||||
- HIGHLIGHT = 1
|
||||
<?php
|
||||
/* get current time */
|
||||
+/* Probably not needed anymore as jstree uses jquery.cookies
|
||||
list($micro,$seconds) = explode(" ", microtime());
|
||||
$current_time = $seconds + $micro;
|
||||
$expand_hosts = read_graph_config_option("expand_hosts");
|
||||
@@ -522,6 +514,8 @@
|
||||
$dhtml_tree = $_SESSION['dhtml_tree'];
|
||||
}
|
||||
}
|
||||
+*/
|
||||
+ $dhtml_tree = create_dhtml_tree();
|
||||
|
||||
$total_tree_items = sizeof($dhtml_tree) - 1;
|
||||
|
||||
@@ -529,8 +523,31 @@
|
||||
print $dhtml_tree[$i];
|
||||
}
|
||||
?>
|
||||
- //-->
|
||||
- </script>
|
||||
+<script type="text/javascript">
|
||||
+$(function () {
|
||||
+ $("#jtree")
|
||||
+ .jstree({
|
||||
+ "plugins" : ["ui","themes","html_data","cookies"],
|
||||
+ "themes" : {"icons" : false,
|
||||
+ "url" : "<?php echo $config['url_path']; ?>include/js/jquery/themes/default/style.css"},
|
||||
+ "cookies" : {
|
||||
+ "save_opened" : "Cacti_jstree_open",
|
||||
+ "save_selected" : "Cacti_jstree_select"
|
||||
+ }
|
||||
+ })
|
||||
+
|
||||
+ // Make sure that the nodes are actually used as links
|
||||
+ // We need reselect to prevent endless loops
|
||||
+ // https://groups.google.com/d/topic/jstree/j6XNq9hQdeA/discussion
|
||||
+ .bind("reselect.jstree", function (e, data) {
|
||||
+ data.inst.get_container().bind("select_node.jstree", function (e, data) {
|
||||
+ // data.rstl.obj is the object that was selected.
|
||||
+ document.location.href = data.rslt.obj.children("a").attr("href");
|
||||
+ });
|
||||
+ });
|
||||
+
|
||||
+});
|
||||
+</script>
|
||||
<?php
|
||||
}
|
||||
|
||||
@@ -543,9 +560,8 @@
|
||||
|
||||
$dhtml_tree[0] = $start;
|
||||
$dhtml_tree[1] = read_graph_config_option("expand_hosts");
|
||||
- $dhtml_tree[2] = "foldersTree = gFld(\"\", \"\")\n";
|
||||
- $dhtml_tree[3] = "foldersTree.xID = \"root\"\n";
|
||||
- $i = 3;
|
||||
+ $dhtml_tree[2] = "\n<div id=\"jtree\">\n";
|
||||
+ $i = 2;
|
||||
|
||||
$tree_list = get_graph_tree_array();
|
||||
|
||||
@@ -567,7 +583,6 @@
|
||||
|
||||
if (sizeof($tree_list) > 0) {
|
||||
foreach ($tree_list as $tree) {
|
||||
- $i++;
|
||||
$hierarchy = db_fetch_assoc("select
|
||||
graph_tree_items.id,
|
||||
graph_tree_items.title,
|
||||
@@ -583,21 +598,45 @@
|
||||
and graph_tree_items.local_graph_id = 0
|
||||
order by graph_tree_items.order_key");
|
||||
|
||||
- $dhtml_tree[$i] = "ou0 = insFld(foldersTree, gFld(\"" . htmlspecialchars($tree["name"]) . "\", \"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"]) . "\"))\n";
|
||||
$i++;
|
||||
- $dhtml_tree[$i] = "ou0.xID = \"tree_" . $tree["id"] . "\"\n";
|
||||
+ $dhtml_tree[$i] = "\t<ul>\n\t\t<li id=\"" . htmlspecialchars("tree_" . $tree["id"]) . "\"><a href=\"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"]) . "\">" . htmlspecialchars($tree["name"]) . "</a>\n";
|
||||
|
||||
if (sizeof($hierarchy) > 0) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t<ul>\n";
|
||||
+ $last_tier = 1;
|
||||
+ $openli = false;
|
||||
+ $lasthost = false;
|
||||
foreach ($hierarchy as $leaf) {
|
||||
- $i++;
|
||||
$tier = tree_tier($leaf["order_key"]);
|
||||
|
||||
- if ($leaf["host_id"] > 0) {
|
||||
- $dhtml_tree[$i] = "ou" . ($tier) . " = insFld(ou" . abs(($tier-1)) . ", gFld(\"" . "Host: " . htmlspecialchars($leaf["hostname"]) . "\", \"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"]) . "\"))\n";
|
||||
+ if ($leaf["host_id"] > 0) { //It's a host
|
||||
+ if ($tier > $last_tier) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t<ul>\n";
|
||||
+ } elseif ($tier < $last_tier) {
|
||||
+ if (!$lasthost) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t</li>\n";
|
||||
+ }
|
||||
+ for ($x = $tier; $x < $last_tier; $x++) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t</ul>\n\t\t\t\t</li>\n";
|
||||
+ $openli = false;
|
||||
+ }
|
||||
+ } elseif ($openli && !$lasthost) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t</li>\n";
|
||||
+ $openli = false;
|
||||
+ }
|
||||
+ $last_tier = $tier;
|
||||
+ $lasthost = true;
|
||||
$i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier) . ".xID = \"tree_" . $tree["id"] . "_leaf_" . $leaf["id"] . "\"\n";
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t<li id=\"" . htmlspecialchars("tree_" . $tree["id"] . "_leaf_" . $leaf["id"]) . "\"><a href=\"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"]) . "\">Host: " . htmlspecialchars($leaf["hostname"]) . "</a>\n";
|
||||
|
||||
if (read_graph_config_option("expand_hosts") == "on") {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t<ul>\n";
|
||||
if ($leaf["host_grouping_type"] == HOST_GROUPING_GRAPH_TEMPLATE) {
|
||||
$graph_templates = db_fetch_assoc("select
|
||||
graph_templates.id,
|
||||
@@ -612,9 +651,7 @@
|
||||
if (sizeof($graph_templates) > 0) {
|
||||
foreach ($graph_templates as $graph_template) {
|
||||
$i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+1) . " = insFld(ou" . ($tier) . ", gFld(\" " . htmlspecialchars($graph_template["name"]) . "\", \"graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"] . "&host_group_data=graph_template:" . $graph_template["id"] . "\"))\n";
|
||||
- $i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+1) . ".xID = \"tree_" . $tree["id"] . "_leaf_" . $leaf["id"] . "_hgd_gt_" . $graph_template["id"] . "\"\n";
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t<li id=\"" . htmlspecialchars("tree_" . $tree["id"] . "_leaf_" . $leaf["id"] . "_hgd_gt_" . $graph_template["id"]) . "\"><a href=\"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"] . "&host_group_data=graph_template:" . $graph_template["id"]) . "\">" . htmlspecialchars($graph_template["name"]) . "</a></li>\n";
|
||||
}
|
||||
}
|
||||
}else if ($leaf["host_grouping_type"] == HOST_GROUPING_DATA_QUERY_INDEX) {
|
||||
@@ -645,33 +682,71 @@
|
||||
if ((($data_query["id"] == 0) && ($non_template_graphs > 0)) ||
|
||||
(($data_query["id"] > 0) && (sizeof($sort_field_data) > 0))) {
|
||||
$i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+1) . " = insFld(ou" . ($tier) . ", gFld(\" " . htmlspecialchars($data_query["name"]) . "\", \"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"] . "&host_group_data=data_query:" . $data_query["id"]) . "\"))\n";
|
||||
- $i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+1) . ".xID = \"tree_" . $tree["id"] . "_leaf_" . $leaf["id"] . "_hgd_dq_" . $data_query["id"] . "\"\n";
|
||||
-
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t<li id=\"" . htmlspecialchars("tree_" . $tree["id"] . "_leaf_" . $leaf["id"] . "_hgd_dq_" . $data_query["id"]) . "\"><a href=\"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"] . "&host_group_data=data_query:" . $data_query["id"]) . "\">" . htmlspecialchars($data_query["name"]) . "</a>\n";
|
||||
if ($data_query["id"] > 0) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t\t<ul>\n";
|
||||
while (list($snmp_index, $sort_field_value) = each($sort_field_data)) {
|
||||
$i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+2) . " = insFld(ou" . ($tier+1) . ", gFld(\" " . htmlspecialchars($sort_field_value) . "\", \"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"] . "&host_group_data=data_query_index:" . $data_query["id"] . ":" . urlencode($snmp_index)) . "\"))\n";
|
||||
- $i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier+2) . ".xID = \"tree_" . $tree["id"] . "_leaf_" . $leaf["id"] . "_hgd_dqi" . $data_query["id"] . "_" . urlencode($snmp_index) . "\"\n";
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t\t\t<li id=\"" . htmlspecialchars("tree_" . $tree["id"] . "_leaf_" . $leaf["id"] . "_hgd_dqi" . $data_query["id"]) . "_" . urlencode($snmp_index) . "\"><a href=\"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"] . "&host_group_data=data_query_index:" . $data_query["id"] . ":" . urlencode($snmp_index)) . "\">" . htmlspecialchars($sort_field_value) . "</a></li>\n";
|
||||
}
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t\t</ul>\n";
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t</li>\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t\t</li>\n";
|
||||
+ }
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t</ul>\n";
|
||||
+ }
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t</li>\n";
|
||||
+ }else{ //It's not a host
|
||||
+ if ($tier > $last_tier) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t<ul>\n";
|
||||
+ } elseif ($tier < $last_tier) {
|
||||
+ if (!$lasthost) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "</li>\n";
|
||||
}
|
||||
+ for ($x = $tier; $x < $last_tier; $x++) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t</ul>\n\t\t\t\t</li>\n";
|
||||
+ $openli = false;
|
||||
+ }
|
||||
+ } elseif ($openli && !$lasthost) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "</li>\n";
|
||||
+ $openli = false;
|
||||
}
|
||||
- }else{
|
||||
- $dhtml_tree[$i] = "ou" . ($tier) . " = insFld(ou" . abs(($tier-1)) . ", gFld(\"" . htmlspecialchars($leaf["title"]) . "\", \"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"]) . "\"))\n";
|
||||
+ $last_tier = $tier;
|
||||
$i++;
|
||||
- $dhtml_tree[$i] = "ou" . ($tier) . ".xID = \"tree_" . $tree["id"] . "_leaf_" . $leaf["id"] . "\"\n";
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t<li id=\"" . htmlspecialchars("tree_" . $tree["id"] . "_leaf_" . $leaf["id"]) . "\"><a href=\"" . htmlspecialchars("graph_view.php?action=tree&tree_id=" . $tree["id"] . "&leaf_id=" . $leaf["id"]) . "\">" . htmlspecialchars($leaf["title"]) . "</a>\n";
|
||||
+ $openli = true;
|
||||
+ $lasthost = false;
|
||||
}
|
||||
}
|
||||
+ for ($x = $last_tier; $x > 1; $x--) {
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t\t\t</ul>\n\t\t\t\t</li>\n";
|
||||
+ }
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t\t</ul>\n";
|
||||
}
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "\t\t</li>\n\t</ul>\n";
|
||||
}
|
||||
}
|
||||
|
||||
+ $i++;
|
||||
+ $dhtml_tree[$i] = "</div>\n";
|
||||
+
|
||||
return $dhtml_tree;
|
||||
}
|
||||
|
||||
@@ -758,14 +833,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
- print "<script type=\"text/javascript\">\n";
|
||||
- print "<!--\n";
|
||||
- print "myNode = findObj(\"$nodeid\")\n";
|
||||
- print "myNode.forceOpeningOfAncestorFolders();\n";
|
||||
- print "highlightObjLink(myNode)\n";
|
||||
- print "//-->\n";
|
||||
- print "</script>";
|
||||
-
|
||||
/* ================= input validation ================= */
|
||||
input_validate_input_number(get_request_var_post("graphs"));
|
||||
input_validate_input_number(get_request_var_post("page"));
|
||||
19
src/patches/cacti/cacti-0.8.8b-html-injection.patch
Normal file
19
src/patches/cacti/cacti-0.8.8b-html-injection.patch
Normal file
@@ -0,0 +1,19 @@
|
||||
------------------------------------------------------------------------
|
||||
r7443 | rony | 2014-03-30 18:43:28 -0500 (Sun, 30 Mar 2014) | 2 lines
|
||||
|
||||
bug#0002431: CVE-2014-2326 Unspecified HTML Injection Vulnerability
|
||||
|
||||
------------------------------------------------------------------------
|
||||
Index: branches/0.8.8/cdef.php
|
||||
===================================================================
|
||||
--- branches/0.8.8/cdef.php (revision 7442)
|
||||
+++ branches/0.8.8/cdef.php (revision 7443)
|
||||
@@ -431,7 +431,7 @@
|
||||
<a class="linkEditMain" href="<?php print htmlspecialchars("cdef.php?action=item_edit&id=" . $cdef_item["id"] . "&cdef_id=" . $cdef["id"]);?>">Item #<?php print htmlspecialchars($i);?></a>
|
||||
</td>
|
||||
<td>
|
||||
- <em><?php $cdef_item_type = $cdef_item["type"]; print $cdef_item_types[$cdef_item_type];?></em>: <strong><?php print get_cdef_item_name($cdef_item["id"]);?></strong>
|
||||
+ <em><?php $cdef_item_type = $cdef_item["type"]; print $cdef_item_types[$cdef_item_type];?></em>: <strong><?php print htmlspecialchars(get_cdef_item_name($cdef_item["id"]));?></strong>
|
||||
</td>
|
||||
<td>
|
||||
<a href="<?php print htmlspecialchars("cdef.php?action=item_movedown&id=" . $cdef_item["id"] . "&cdef_id=" . $cdef["id"]);?>"><img src="images/move_down.gif" border="0" alt="Move Down"></a>
|
||||
@@ -0,0 +1,28 @@
|
||||
------------------------------------------------------------------------
|
||||
r7442 | rony | 2014-03-30 18:41:56 -0500 (Sun, 30 Mar 2014) | 2 lines
|
||||
|
||||
bug#0002433: CVE-2014-2328 Unspecified Remote Command Execution Vulnerability
|
||||
|
||||
------------------------------------------------------------------------
|
||||
Index: branches/0.8.8/lib/graph_export.php
|
||||
===================================================================
|
||||
--- branches/0.8.8/lib/graph_export.php (revision 7441)
|
||||
+++ branches/0.8.8/lib/graph_export.php (revision 7442)
|
||||
@@ -339,7 +339,7 @@
|
||||
chdir($stExportDir);
|
||||
|
||||
/* set the initial command structure */
|
||||
- $stExecute = 'ncftpput -R -V -r 1 -u '.$aFtpExport['username'].' -p '.$aFtpExport['password'];
|
||||
+ $stExecute = 'ncftpput -R -V -r 1 -u ' . cacti_escapeshellarg($aFtpExport['username']) . ' -p ' . cacti_escapeshellarg($aFtpExport['password']);
|
||||
|
||||
/* if the user requested passive mode, use it */
|
||||
if ($aFtpExport['passive']) {
|
||||
@@ -347,7 +347,7 @@
|
||||
}
|
||||
|
||||
/* setup the port, server, remote directory and all files */
|
||||
- $stExecute .= ' -P ' . $aFtpExport['port'] . ' ' . $aFtpExport['server'] . ' ' . $aFtpExport['remotedir'] . ".";
|
||||
+ $stExecute .= ' -P ' . cacti_escapeshellarg($aFtpExport['port']) . ' ' . cacti_escapeshellarg($aFtpExport['server']) . ' ' . cacti_escapeshellarg($aFtpExport['remotedir']) . ".";
|
||||
|
||||
/* run the command */
|
||||
$iExecuteReturns = 0;
|
||||
42
src/patches/cacti/cacti-0.8.8b-rra-comments.patch
Normal file
42
src/patches/cacti/cacti-0.8.8b-rra-comments.patch
Normal file
@@ -0,0 +1,42 @@
|
||||
------------------------------------------------------------------------
|
||||
r7418 | gandalf | 2013-08-13 13:32:49 -0600 (Tue, 13 Aug 2013) | 1 line
|
||||
|
||||
fix COMMENT handling, even in case COMMENT is empty, with or without HR and with variable substitution
|
||||
------------------------------------------------------------------------
|
||||
Index: branches/0.8.8/lib/rrd.php
|
||||
===================================================================
|
||||
--- branches/0.8.8/lib/rrd.php (revision 7417)
|
||||
+++ branches/0.8.8/lib/rrd.php (revision 7418)
|
||||
@@ -1343,20 +1343,20 @@
|
||||
$need_rrd_nl = TRUE;
|
||||
|
||||
if ($graph_item_types{$graph_item["graph_type_id"]} == "COMMENT") {
|
||||
+ # perform variable substitution first (in case this will yield an empty results or brings command injection problems)
|
||||
+ $comment_arg = rrd_substitute_host_query_data($graph_variables["text_format"][$graph_item_id], $graph, $graph_item);
|
||||
+ # next, compute the argument of the COMMENT statement and perform injection counter measures
|
||||
+ if (trim($comment_arg) == '') { # an empty COMMENT must be treated with care
|
||||
+ $comment_arg = cacti_escapeshellarg(' ' . $hardreturn[$graph_item_id]);
|
||||
+ } else {
|
||||
+ $comment_arg = cacti_escapeshellarg($comment_arg . $hardreturn[$graph_item_id]);
|
||||
+ }
|
||||
+
|
||||
+ # create rrdtool specific command line
|
||||
if (read_config_option("rrdtool_version") != "rrd-1.0.x") {
|
||||
- $comment_string = $graph_item_types{$graph_item["graph_type_id"]} . ":" . str_replace(":", "\:", cacti_escapeshellarg($graph_variables["text_format"][$graph_item_id] . $hardreturn[$graph_item_id])) . " ";
|
||||
- if (trim($comment_string) == 'COMMENT:"\n"') {
|
||||
- $txt_graph_items .= 'COMMENT:" \n"'; # rrdtool will skip a COMMENT that holds a NL only; so add a blank to make NL work
|
||||
- } else if (trim($comment_string) != "COMMENT:\"\"") {
|
||||
- $txt_graph_items .= rrd_substitute_host_query_data($comment_string, $graph, $graph_item);
|
||||
- }
|
||||
+ $txt_graph_items .= $graph_item_types{$graph_item["graph_type_id"]} . ":" . str_replace(":", "\:", $comment_arg) . " ";
|
||||
}else {
|
||||
- $comment_string = $graph_item_types{$graph_item["graph_type_id"]} . ":" . cacti_escapeshellarg($graph_variables["text_format"][$graph_item_id] . $hardreturn[$graph_item_id]) . " ";
|
||||
- if (trim($comment_string) == 'COMMENT:"\n"') {
|
||||
- $txt_graph_items .= 'COMMENT:" \n"'; # rrdtool will skip a COMMENT that holds a NL only; so add a blank to make NL work
|
||||
- } else if (trim($comment_string) != "COMMENT:\"\"") {
|
||||
- $txt_graph_items .= rrd_substitute_host_query_data($comment_string, $graph, $graph_item);
|
||||
- }
|
||||
+ $txt_graph_items .= $graph_item_types{$graph_item["graph_type_id"]} . ":" . $comment_arg . " ";
|
||||
}
|
||||
}elseif (($graph_item_types{$graph_item["graph_type_id"]} == "GPRINT") && (!isset($graph_data_array["graph_nolegend"]))) {
|
||||
$graph_variables["text_format"][$graph_item_id] = str_replace(":", "\:", $graph_variables["text_format"][$graph_item_id]); /* escape colons */
|
||||
155
src/patches/cacti/cacti-0.8.8b-sanitize-variables.patch
Normal file
155
src/patches/cacti/cacti-0.8.8b-sanitize-variables.patch
Normal file
@@ -0,0 +1,155 @@
|
||||
------------------------------------------------------------------------
|
||||
r7420 | cigamit | 2013-08-17 21:41:24 -0600 (Sat, 17 Aug 2013) | 1 line
|
||||
|
||||
Bug #0002383 : Sanitize the step and id variables
|
||||
------------------------------------------------------------------------
|
||||
Index: branches/0.8.8/host.php
|
||||
===================================================================
|
||||
--- branches/0.8.8/host.php (revision 7419)
|
||||
+++ branches/0.8.8/host.php (revision 7420)
|
||||
@@ -149,6 +149,9 @@
|
||||
if ($_POST["snmp_version"] == 3 && ($_POST["snmp_password"] != $_POST["snmp_password_confirm"])) {
|
||||
raise_message(4);
|
||||
}else{
|
||||
+ input_validate_input_number(get_request_var_post("id"));
|
||||
+ input_validate_input_number(get_request_var_post("host_template_id"));
|
||||
+
|
||||
$host_id = api_device_save($_POST["id"], $_POST["host_template_id"], $_POST["description"],
|
||||
trim($_POST["hostname"]), $_POST["snmp_community"], $_POST["snmp_version"],
|
||||
$_POST["snmp_username"], $_POST["snmp_password"],
|
||||
Index: branches/0.8.8/lib/api_device.php
|
||||
===================================================================
|
||||
--- branches/0.8.8/lib/api_device.php (revision 7419)
|
||||
+++ branches/0.8.8/lib/api_device.php (revision 7420)
|
||||
@@ -107,7 +107,7 @@
|
||||
$_host_template_id = db_fetch_cell("select host_template_id from host where id=$id");
|
||||
}
|
||||
|
||||
- $save["id"] = $id;
|
||||
+ $save["id"] = form_input_validate($id, "id", "^[0-9]+$", false, 3);
|
||||
$save["host_template_id"] = form_input_validate($host_template_id, "host_template_id", "^[0-9]+$", false, 3);
|
||||
$save["description"] = form_input_validate($description, "description", "", false, 3);
|
||||
$save["hostname"] = form_input_validate(trim($hostname), "hostname", "", false, 3);
|
||||
Index: branches/0.8.8/install/index.php
|
||||
===================================================================
|
||||
--- branches/0.8.8/install/index.php (revision 7419)
|
||||
+++ branches/0.8.8/install/index.php (revision 7420)
|
||||
@@ -310,27 +310,28 @@
|
||||
}
|
||||
|
||||
/* pre-processing that needs to be done for each step */
|
||||
-if (empty($_REQUEST["step"])) {
|
||||
- $_REQUEST["step"] = 1;
|
||||
-}else{
|
||||
- if ($_REQUEST["step"] == "1") {
|
||||
- $_REQUEST["step"] = "2";
|
||||
- }elseif (($_REQUEST["step"] == "2") && ($_REQUEST["install_type"] == "1")) {
|
||||
- $_REQUEST["step"] = "3";
|
||||
- }elseif (($_REQUEST["step"] == "2") && ($_REQUEST["install_type"] == "3")) {
|
||||
- $_REQUEST["step"] = "8";
|
||||
- }elseif (($_REQUEST["step"] == "8") && ($old_version_index <= array_search("0.8.5a", $cacti_versions))) {
|
||||
- $_REQUEST["step"] = "9";
|
||||
- }elseif ($_REQUEST["step"] == "8") {
|
||||
- $_REQUEST["step"] = "3";
|
||||
- }elseif ($_REQUEST["step"] == "9") {
|
||||
- $_REQUEST["step"] = "3";
|
||||
- }elseif ($_REQUEST["step"] == "3") {
|
||||
- $_REQUEST["step"] = "4";
|
||||
+if (isset($_REQUEST["step"]) && $_REQUEST["step"] > 0) {
|
||||
+ $step = intval($_REQUEST["step"]);
|
||||
+ if ($step == "1") {
|
||||
+ $step = "2";
|
||||
+ } elseif (($step == "2") && ($_REQUEST["install_type"] == "1")) {
|
||||
+ $step = "3";
|
||||
+ } elseif (($step == "2") && ($_REQUEST["install_type"] == "3")) {
|
||||
+ $step = "8";
|
||||
+ } elseif (($step == "8") && ($old_version_index <= array_search("0.8.5a", $cacti_versions))) {
|
||||
+ $step = "9";
|
||||
+ } elseif ($step == "8") {
|
||||
+ $step = "3";
|
||||
+ } elseif ($step == "9") {
|
||||
+ $step = "3";
|
||||
+ } elseif ($step == "3") {
|
||||
+ $step = "4";
|
||||
}
|
||||
+} else {
|
||||
+ $step = 1;
|
||||
}
|
||||
|
||||
-if ($_REQUEST["step"] == "4") {
|
||||
+if ($step == "4") {
|
||||
include_once("../lib/data_query.php");
|
||||
include_once("../lib/utility.php");
|
||||
|
||||
@@ -366,7 +367,7 @@
|
||||
|
||||
header ("Location: ../index.php");
|
||||
exit;
|
||||
-}elseif (($_REQUEST["step"] == "8") && ($_REQUEST["install_type"] == "3")) {
|
||||
+}elseif (($step == "8") && ($_REQUEST["install_type"] == "3")) {
|
||||
/* if the version is not found, die */
|
||||
if (!is_int($old_version_index)) {
|
||||
print " <p style='font-family: Verdana, Arial; font-size: 16px; font-weight: bold; color: red;'>Error</p>
|
||||
@@ -505,7 +506,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="100%" style="font-size: 12px;">
|
||||
- <?php if ($_REQUEST["step"] == "1") { ?>
|
||||
+ <?php if ($step == "1") { ?>
|
||||
|
||||
<p>Thanks for taking the time to download and install cacti, the complete graphing
|
||||
solution for your network. Before you can start making cool graphs, there are a few
|
||||
@@ -530,7 +531,7 @@
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.</p>
|
||||
|
||||
- <?php }elseif ($_REQUEST["step"] == "2") { ?>
|
||||
+ <?php }elseif ($step == "2") { ?>
|
||||
|
||||
<p>Please select the type of installation</p>
|
||||
|
||||
@@ -551,7 +552,7 @@
|
||||
print "Server Operating System Type: " . $config["cacti_server_os"] . "<br>"; ?>
|
||||
</p>
|
||||
|
||||
- <?php }elseif ($_REQUEST["step"] == "3") { ?>
|
||||
+ <?php }elseif ($step == "3") { ?>
|
||||
|
||||
<p>Make sure all of these values are correct before continuing.</p>
|
||||
<?php
|
||||
@@ -609,7 +610,7 @@
|
||||
is an upgrade. You can change any of the settings on this screen at a later
|
||||
time by going to "Cacti Settings" from within Cacti.</p>
|
||||
|
||||
- <?php }elseif ($_REQUEST["step"] == "8") { ?>
|
||||
+ <?php }elseif ($step == "8") { ?>
|
||||
|
||||
<p>Upgrade results:</p>
|
||||
|
||||
@@ -659,7 +660,7 @@
|
||||
print $upgrade_results;
|
||||
?>
|
||||
|
||||
- <?php }elseif ($_REQUEST["step"] == "9") { ?>
|
||||
+ <?php }elseif ($step == "9") { ?>
|
||||
|
||||
<p style='font-size: 16px; font-weight: bold; color: red;'>Important Upgrade Notice</p>
|
||||
|
||||
@@ -673,7 +674,7 @@
|
||||
|
||||
<?php }?>
|
||||
|
||||
- <p align="right"><input type="image" src="install_<?php if ($_REQUEST["step"] == "3") {?>finish<?php }else{?>next<?php }?>.gif" alt="<?php if ($_REQUEST["step"] == "3"){?>Finish<?php }else{?>Next<?php }?>"></p>
|
||||
+ <p align="right"><input type="image" src="install_<?php if ($step == "3") {?>finish<?php }else{?>next<?php }?>.gif" alt="<?php if ($step == "3"){?>Finish<?php }else{?>Next<?php }?>"></p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -681,7 +682,7 @@
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
-<input type="hidden" name="step" value="<?php print $_REQUEST["step"];?>">
|
||||
+<input type="hidden" name="step" value="<?php print $step;?>">
|
||||
|
||||
</form>
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
------------------------------------------------------------------------
|
||||
r7439 | rony | 2014-03-30 17:52:10 -0500 (Sun, 30 Mar 2014) | 5 lines
|
||||
|
||||
bug#0002405: SQL injection in graph_xport.php
|
||||
|
||||
- Fixed form input validation problems
|
||||
- Fixed rrd export and graph shell escape issues
|
||||
|
||||
------------------------------------------------------------------------
|
||||
Index: branches/0.8.8/graph_xport.php
|
||||
===================================================================
|
||||
--- branches/0.8.8/graph_xport.php (revision 7438)
|
||||
+++ branches/0.8.8/graph_xport.php (revision 7439)
|
||||
@@ -47,43 +47,48 @@
|
||||
|
||||
$graph_data_array = array();
|
||||
|
||||
+/* ================= input validation ================= */
|
||||
+input_validate_input_number(get_request_var("local_graph_id"));
|
||||
+input_validate_input_number(get_request_var("rra_id"));
|
||||
+/* ==================================================== */
|
||||
+
|
||||
/* override: graph start time (unix time) */
|
||||
-if (!empty($_GET["graph_start"]) && $_GET["graph_start"] < 1600000000) {
|
||||
- $graph_data_array["graph_start"] = $_GET["graph_start"];
|
||||
+if (!empty($_GET["graph_start"]) && is_numeric($_GET["graph_start"] && $_GET["graph_start"] < 1600000000)) {
|
||||
+ $graph_data_array["graph_start"] = get_request_var("graph_start");
|
||||
}
|
||||
|
||||
/* override: graph end time (unix time) */
|
||||
-if (!empty($_GET["graph_end"]) && $_GET["graph_end"] < 1600000000) {
|
||||
- $graph_data_array["graph_end"] = $_GET["graph_end"];
|
||||
+if (!empty($_GET["graph_end"]) && is_numeric($_GET["graph_end"]) && $_GET["graph_end"] < 1600000000) {
|
||||
+ $graph_data_array["graph_end"] = get_request_var("graph_end");
|
||||
}
|
||||
|
||||
/* override: graph height (in pixels) */
|
||||
-if (!empty($_GET["graph_height"]) && $_GET["graph_height"] < 3000) {
|
||||
- $graph_data_array["graph_height"] = $_GET["graph_height"];
|
||||
+if (!empty($_GET["graph_height"]) && is_numeric($_GET["graph_height"]) && $_GET["graph_height"] < 3000) {
|
||||
+ $graph_data_array["graph_height"] = get_request_var("graph_height");
|
||||
}
|
||||
|
||||
/* override: graph width (in pixels) */
|
||||
-if (!empty($_GET["graph_width"]) && $_GET["graph_width"] < 3000) {
|
||||
- $graph_data_array["graph_width"] = $_GET["graph_width"];
|
||||
+if (!empty($_GET["graph_width"]) && is_numeric($_GET["graph_width"]) && $_GET["graph_width"] < 3000) {
|
||||
+ $graph_data_array["graph_width"] = get_request_var("graph_width");
|
||||
}
|
||||
|
||||
/* override: skip drawing the legend? */
|
||||
if (!empty($_GET["graph_nolegend"])) {
|
||||
- $graph_data_array["graph_nolegend"] = $_GET["graph_nolegend"];
|
||||
+ $graph_data_array["graph_nolegend"] = get_request_var("graph_nolegend");
|
||||
}
|
||||
|
||||
/* print RRDTool graph source? */
|
||||
if (!empty($_GET["show_source"])) {
|
||||
- $graph_data_array["print_source"] = $_GET["show_source"];
|
||||
+ $graph_data_array["print_source"] = get_request_var("show_source");
|
||||
}
|
||||
|
||||
-$graph_info = db_fetch_row("SELECT * FROM graph_templates_graph WHERE local_graph_id='" . $_REQUEST["local_graph_id"] . "'");
|
||||
+$graph_info = db_fetch_row("SELECT * FROM graph_templates_graph WHERE local_graph_id='" . get_request_var("local_graph_id") . "'");
|
||||
|
||||
/* for bandwidth, NThPercentile */
|
||||
$xport_meta = array();
|
||||
|
||||
/* Get graph export */
|
||||
-$xport_array = @rrdtool_function_xport($_GET["local_graph_id"], $_GET["rra_id"], $graph_data_array, $xport_meta);
|
||||
+$xport_array = @rrdtool_function_xport($_GET["local_graph_id"], get_request_var("rra_id"), $graph_data_array, $xport_meta);
|
||||
|
||||
/* Make graph title the suggested file name */
|
||||
if (is_array($xport_array["meta"])) {
|
||||
Index: branches/0.8.8/lib/rrd.php
|
||||
===================================================================
|
||||
--- branches/0.8.8/lib/rrd.php (revision 7438)
|
||||
+++ branches/0.8.8/lib/rrd.php (revision 7439)
|
||||
@@ -865,13 +865,13 @@
|
||||
/* basic graph options */
|
||||
$graph_opts .=
|
||||
"--imgformat=" . $image_types{$graph["image_format_id"]} . RRD_NL .
|
||||
- "--start=$graph_start" . RRD_NL .
|
||||
- "--end=$graph_end" . RRD_NL .
|
||||
+ "--start=" . cacti_escapeshellarg($graph_start) . RRD_NL .
|
||||
+ "--end=" . cacti_escapeshellarg($graph_end) . RRD_NL .
|
||||
"--title=" . cacti_escapeshellarg($graph["title_cache"]) . RRD_NL .
|
||||
"$rigid" .
|
||||
- "--base=" . $graph["base_value"] . RRD_NL .
|
||||
- "--height=$graph_height" . RRD_NL .
|
||||
- "--width=$graph_width" . RRD_NL .
|
||||
+ "--base=" . cacti_escapeshellarg($graph["base_value"]) . RRD_NL .
|
||||
+ "--height=" . cacti_escapeshellarg($graph_height) . RRD_NL .
|
||||
+ "--width=" . cacti_escapeshellarg($graph_width) . RRD_NL .
|
||||
"$scale" .
|
||||
"$unit_value" .
|
||||
"$unit_exponent_value" .
|
||||
@@ -1606,8 +1606,8 @@
|
||||
|
||||
/* basic export options */
|
||||
$xport_opts =
|
||||
- "--start=$xport_start" . RRD_NL .
|
||||
- "--end=$xport_end" . RRD_NL .
|
||||
+ "--start=" . cacti_escapeshellarg($xport_start) . RRD_NL .
|
||||
+ "--end=" . cacti_escapeshellarg($xport_end) . RRD_NL .
|
||||
"--maxrows=10000" . RRD_NL;
|
||||
|
||||
$xport_defs = "";
|
||||
@@ -1997,7 +1997,7 @@
|
||||
$stacked_columns["col" . $j] = ($graph_item_types{$xport_item["graph_type_id"]} == "STACK") ? 1 : 0;
|
||||
$j++;
|
||||
|
||||
- $txt_xport_items .= "XPORT:" . $data_source_name . ":" . str_replace(":", "", cacti_escapeshellarg($legend_name)) ;
|
||||
+ $txt_xport_items .= "XPORT:" . cacti_escapeshellarg($data_source_name) . ":" . str_replace(":", "", cacti_escapeshellarg($legend_name)) ;
|
||||
}else{
|
||||
$need_rrd_nl = FALSE;
|
||||
}
|
||||
69
src/patches/hostname-rh.patch
Normal file
69
src/patches/hostname-rh.patch
Normal file
@@ -0,0 +1,69 @@
|
||||
diff -up hostname/Makefile.rh hostname/Makefile
|
||||
--- hostname/Makefile.rh 2013-11-04 10:12:59.670379153 +0100
|
||||
+++ hostname/Makefile 2013-11-04 10:15:04.957314495 +0100
|
||||
@@ -10,21 +10,17 @@ OBJS=hostname.o
|
||||
|
||||
hostname: $(OBJS)
|
||||
$(CC) $(CFLAGS) -o $@ $(OBJS) $(LDFLAGS) -lnsl
|
||||
- ln -fs hostname dnsdomainname
|
||||
- ln -fs hostname domainname
|
||||
- ln -fs hostname ypdomainname
|
||||
- ln -fs hostname nisdomainname
|
||||
|
||||
install: hostname
|
||||
install -d ${BASEDIR}$(MANDIR)/man1
|
||||
- install -o root -g root -m 0644 hostname.1 ${BASEDIR}$(MANDIR)/man1
|
||||
+ install -m 0644 hostname.1 ${BASEDIR}$(MANDIR)/man1
|
||||
ln -fs hostname.1 ${BASEDIR}$(MANDIR)/man1/dnsdomainname.1
|
||||
ln -fs hostname.1 ${BASEDIR}$(MANDIR)/man1/domainname.1
|
||||
ln -fs hostname.1 ${BASEDIR}$(MANDIR)/man1/ypdomainname.1
|
||||
ln -fs hostname.1 ${BASEDIR}$(MANDIR)/man1/nisdomainname.1
|
||||
|
||||
install -d ${BASEDIR}$(BINDIR)
|
||||
- install -o root -g root -m 0755 hostname ${BASEDIR}$(BINDIR)
|
||||
+ install -m 0755 hostname ${BASEDIR}$(BINDIR)
|
||||
ln -fs hostname ${BASEDIR}$(BINDIR)/dnsdomainname
|
||||
ln -fs hostname ${BASEDIR}$(BINDIR)/domainname
|
||||
ln -fs hostname ${BASEDIR}$(BINDIR)/nisdomainname
|
||||
diff -up hostname/hostname.1.rh hostname/hostname.1
|
||||
--- hostname/hostname.1.rh 2013-11-03 15:24:23.000000000 +0100
|
||||
+++ hostname/hostname.1 2013-11-04 10:12:59.670379153 +0100
|
||||
@@ -80,6 +80,28 @@ complete FQDN of the system is returned
|
||||
.B "THE FQDN"
|
||||
below).
|
||||
|
||||
+.LP
|
||||
+The function
|
||||
+.BR gethostname(2)
|
||||
+is used to get the hostname. When the
|
||||
+.BR "hostname \-a, \-d, \-f or \-i"
|
||||
+is called will
|
||||
+.BR gethostbyname(3)
|
||||
+be called. The difference in
|
||||
+.BR gethostname(2)
|
||||
+and
|
||||
+.BR gethostbyname(3)
|
||||
+is that
|
||||
+.BR gethostbyname(3)
|
||||
+is network aware, so it consults
|
||||
+.IR /etc/nsswitch.conf
|
||||
+and
|
||||
+.IR /etc/host.conf
|
||||
+to decide whether to read information in
|
||||
+.IR /etc/hostname
|
||||
+or
|
||||
+.IR /etc/hosts
|
||||
+
|
||||
.SS "SET NAME"
|
||||
When called with one argument or with the
|
||||
.B \-\-file
|
||||
@@ -105,8 +127,7 @@ command (see
|
||||
.B "THE FQDN"
|
||||
below).
|
||||
.LP
|
||||
-The host name is usually set once at system startup in
|
||||
-.I /etc/init.d/hostname.sh
|
||||
+The host name is usually set once at system startup
|
||||
(normally by reading the contents of a file which contains
|
||||
the host name, e.g.
|
||||
.IR /etc/hostname ).
|
||||
@@ -1,22 +0,0 @@
|
||||
Index: services/scheduler.cpp
|
||||
===================================================================
|
||||
--- services/scheduler.cpp (revision 1310078)
|
||||
+++ services/scheduler.cpp (working copy)
|
||||
@@ -52,7 +52,7 @@
|
||||
#include "config.h"
|
||||
#include "bench.h"
|
||||
|
||||
-#define DEBUG_SCHEDULER 0
|
||||
+#define DEBUG_SCHEDULER 1
|
||||
|
||||
/* TODO:
|
||||
* leak check
|
||||
@@ -613,6 +613,8 @@
|
||||
|
||||
platform_map.insert( make_pair( string( "ppc" ), string( "ppc64" ) ) );
|
||||
platform_map.insert( make_pair( string( "s390" ), string( "s390x" ) ) );
|
||||
+
|
||||
+ platform_map.insert( make_pair( string( "armv5tel"), string( "armv7l" ) ) );
|
||||
}
|
||||
|
||||
multimap<string, string>::const_iterator end = platform_map.upper_bound( target );
|
||||
@@ -1,107 +0,0 @@
|
||||
Index: icecc-0.9.6/doc/man-scheduler.1.docbook
|
||||
===================================================================
|
||||
--- icecc-0.9.6.orig/doc/man-scheduler.1.docbook
|
||||
+++ icecc-0.9.6/doc/man-scheduler.1.docbook
|
||||
@@ -23,13 +23,13 @@
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
- <refname>scheduler</refname>
|
||||
+ <refname>icecc-scheduler</refname>
|
||||
<refpurpose>Icecream scheduler</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
-<command>scheduler</command>
|
||||
+<command>icecc-scheduler</command>
|
||||
<group>
|
||||
<arg choice="opt">
|
||||
<option>-n</option>
|
||||
@@ -151,7 +151,7 @@ need to run the scheduler with root righ
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
-<para>icecream, scheduler, iceccd, icemon</para>
|
||||
+<para>icecream, icecc-scheduler, iceccd, icemon</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
Index: icecc-0.9.6/services/Makefile.am
|
||||
===================================================================
|
||||
--- icecc-0.9.6.orig/services/Makefile.am
|
||||
+++ icecc-0.9.6/services/Makefile.am
|
||||
@@ -11,9 +11,9 @@ ice_HEADERS = job.h comm.h
|
||||
noinst_HEADERS = bench.h exitcode.h getifaddrs.h logging.h tempfile.h platform.h
|
||||
icedir = $(includedir)/icecc
|
||||
|
||||
-sbin_PROGRAMS = scheduler
|
||||
-scheduler_SOURCES = scheduler.cpp
|
||||
-scheduler_LDADD = libicecc.la
|
||||
+sbin_PROGRAMS = icecc-scheduler
|
||||
+icecc_scheduler_SOURCES = scheduler.cpp
|
||||
+icecc_scheduler_LDADD = libicecc.la
|
||||
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = icecc.pc
|
||||
Index: icecc-0.9.6/services/Makefile.in
|
||||
===================================================================
|
||||
--- icecc-0.9.6.orig/services/Makefile.in
|
||||
+++ icecc-0.9.6/services/Makefile.in
|
||||
@@ -37,7 +37,7 @@ PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
-sbin_PROGRAMS = scheduler$(EXEEXT)
|
||||
+sbin_PROGRAMS = icecc-scheduler$(EXEEXT)
|
||||
subdir = services
|
||||
DIST_COMMON = $(ice_HEADERS) $(noinst_HEADERS) $(srcdir)/Makefile.am \
|
||||
$(srcdir)/Makefile.in $(srcdir)/icecc.pc.in
|
||||
@@ -82,9 +82,9 @@ libicecc_la_LINK = $(LIBTOOL) --tag=CXX
|
||||
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(libicecc_la_CXXFLAGS) \
|
||||
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
PROGRAMS = $(sbin_PROGRAMS)
|
||||
-am_scheduler_OBJECTS = scheduler.$(OBJEXT)
|
||||
-scheduler_OBJECTS = $(am_scheduler_OBJECTS)
|
||||
-scheduler_DEPENDENCIES = libicecc.la
|
||||
+am_icecc_scheduler_OBJECTS = scheduler.$(OBJEXT)
|
||||
+icecc_scheduler_OBJECTS = $(am_icecc_scheduler_OBJECTS)
|
||||
+icecc_scheduler_DEPENDENCIES = libicecc.la
|
||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
@@ -107,8 +107,8 @@ CXXLD = $(CXX)
|
||||
CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
-SOURCES = $(libicecc_la_SOURCES) $(scheduler_SOURCES)
|
||||
-DIST_SOURCES = $(libicecc_la_SOURCES) $(scheduler_SOURCES)
|
||||
+SOURCES = $(libicecc_la_SOURCES) $(icecc_scheduler_SOURCES)
|
||||
+DIST_SOURCES = $(libicecc_la_SOURCES) $(icecc_scheduler_SOURCES)
|
||||
DATA = $(pkgconfig_DATA)
|
||||
HEADERS = $(ice_HEADERS) $(noinst_HEADERS)
|
||||
ETAGS = etags
|
||||
@@ -242,8 +242,8 @@ libicecc_la_CXXFLAGS = -fPIC -DPIC
|
||||
ice_HEADERS = job.h comm.h
|
||||
noinst_HEADERS = bench.h exitcode.h getifaddrs.h logging.h tempfile.h platform.h
|
||||
icedir = $(includedir)/icecc
|
||||
-scheduler_SOURCES = scheduler.cpp
|
||||
-scheduler_LDADD = libicecc.la
|
||||
+icecc_scheduler_SOURCES = scheduler.cpp
|
||||
+icecc_scheduler_LDADD = libicecc.la
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = icecc.pc
|
||||
all: all-am
|
||||
@@ -358,9 +358,9 @@ clean-sbinPROGRAMS:
|
||||
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
|
||||
echo " rm -f" $$list; \
|
||||
rm -f $$list
|
||||
-scheduler$(EXEEXT): $(scheduler_OBJECTS) $(scheduler_DEPENDENCIES)
|
||||
- @rm -f scheduler$(EXEEXT)
|
||||
- $(CXXLINK) $(scheduler_OBJECTS) $(scheduler_LDADD) $(LIBS)
|
||||
+icecc-scheduler$(EXEEXT): $(icecc_scheduler_OBJECTS) $(icecc_scheduler_DEPENDENCIES)
|
||||
+ @rm -f icecc-scheduler$(EXEEXT)
|
||||
+ $(CXXLINK) $(icecc_scheduler_OBJECTS) $(icecc_scheduler_LDADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
@@ -1,166 +0,0 @@
|
||||
Submitted By: Randy McMurchy <randy_at_linuxfromscratch_dot_org>
|
||||
Date: 2005-03-23
|
||||
Initial Package Version: 1.4.2
|
||||
Upstream Status: Not sure
|
||||
Origin: Internet (URL's are now lost)
|
||||
Description: Fix the rexecd daemon so that it understands shadow
|
||||
passwords. Fix the rshd daemon so that it properly
|
||||
resolves hostnames.
|
||||
|
||||
diff -Naur inetutils-1.4.2-orig/rexecd/rexecd.c inetutils-1.4.2/rexecd/rexecd.c
|
||||
--- inetutils-1.4.2-orig/rexecd/rexecd.c 2002-12-11 12:38:00.000000000 +0000
|
||||
+++ inetutils-1.4.2/rexecd/rexecd.c 2005-02-22 19:53:44.146962264 +0000
|
||||
@@ -79,6 +79,10 @@
|
||||
#include <varargs.h>
|
||||
#endif
|
||||
|
||||
+#ifdef HAVE_SHADOW_H
|
||||
+#include <shadow.h>
|
||||
+#endif
|
||||
+
|
||||
void error __P ((const char *fmt, ...));
|
||||
/*
|
||||
* remote execute server:
|
||||
@@ -127,6 +131,10 @@
|
||||
char *cmdbuf, *cp, *namep;
|
||||
char *user, *pass;
|
||||
struct passwd *pwd;
|
||||
+#ifdef HAVE_SHADOW_H
|
||||
+ struct spwd *spwd;
|
||||
+ char *pw_field;
|
||||
+#endif
|
||||
int s;
|
||||
u_short port;
|
||||
int pv[2], pid, cc;
|
||||
@@ -186,6 +194,24 @@
|
||||
exit(1);
|
||||
}
|
||||
endpwent();
|
||||
+
|
||||
+#ifdef HAVE_SHADOW_H
|
||||
+ // Get encrypted password from /etc/shadow if possible,
|
||||
+ // else from /etc/passwd.
|
||||
+ spwd = getspnam(user);
|
||||
+ if (spwd) {
|
||||
+ pw_field = spwd->sp_pwdp;
|
||||
+ } else {
|
||||
+ pw_field = pwd->pw_passwd;
|
||||
+ }
|
||||
+ if (*pw_field != '\0') {
|
||||
+ namep = CRYPT (pass, pw_field);
|
||||
+ if (strcmp(namep, pw_field)) {
|
||||
+ error("Password incorrect.\n");
|
||||
+ exit(1);
|
||||
+ }
|
||||
+ }
|
||||
+#else
|
||||
if (*pwd->pw_passwd != '\0') {
|
||||
namep = CRYPT (pass, pwd->pw_passwd);
|
||||
if (strcmp(namep, pwd->pw_passwd)) {
|
||||
@@ -193,6 +219,7 @@
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
write(STDERR_FILENO, "\0", 1);
|
||||
if (port) {
|
||||
pipe(pv);
|
||||
diff -Naur inetutils-1.4.2-orig/rshd/rshd.c inetutils-1.4.2/rshd/rshd.c
|
||||
--- inetutils-1.4.2-orig/rshd/rshd.c 2002-12-11 12:38:00.000000000 +0000
|
||||
+++ inetutils-1.4.2/rshd/rshd.c 2005-02-22 19:54:33.162510768 +0000
|
||||
@@ -443,7 +443,7 @@
|
||||
dup2 (sockfd, STDERR_FILENO);
|
||||
}
|
||||
|
||||
- /* Get the "name" of the clent form its Internet address.
|
||||
+ /* Get the "name" of the client form its Internet address.
|
||||
* This is used for the autentication below
|
||||
*/
|
||||
errorstr = NULL;
|
||||
@@ -457,52 +457,49 @@
|
||||
* in a remote net; look up the name and check that this
|
||||
* address corresponds to the name.
|
||||
*/
|
||||
- hostname = strdup (hp->h_name);
|
||||
+ const char *remotehost = strdup(hp->h_name);
|
||||
#ifdef KERBEROS
|
||||
if (!use_kerberos)
|
||||
#endif
|
||||
- if (check_all || local_domain (hp->h_name))
|
||||
+ if (! remotehost)
|
||||
+ errorstr = "Out of memory\n";
|
||||
+ else if (check_all || local_domain (remotehost))
|
||||
{
|
||||
- char *remotehost = (char *) alloca (strlen (hp->h_name) + 1);
|
||||
- if (! remotehost)
|
||||
- errorstr = "Out of memory\n";
|
||||
- else
|
||||
+ errorhost = remotehost;
|
||||
+ hp = gethostbyname (remotehost);
|
||||
+ if (hp == NULL)
|
||||
{
|
||||
- strcpy (remotehost, hp->h_name);
|
||||
- errorhost = remotehost;
|
||||
- hp = gethostbyname (remotehost);
|
||||
- if (hp == NULL)
|
||||
+ syslog (LOG_INFO,
|
||||
+ "Couldn't look up address for %s", remotehost);
|
||||
+ errorstr = "Couldn't look up address for your host (%s)\n";
|
||||
+ hostname = strdup(inet_ntoa(fromp->sin_addr));
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ for (; ; hp->h_addr_list++)
|
||||
{
|
||||
- syslog (LOG_INFO,
|
||||
- "Couldn't look up address for %s", remotehost);
|
||||
- errorstr = "Couldn't look up address for your host (%s)\n";
|
||||
- hostname = inet_ntoa (fromp->sin_addr);
|
||||
+ if (hp->h_addr_list[0] == NULL)
|
||||
+ {
|
||||
+ syslog (LOG_NOTICE,
|
||||
+ "Host addr %s not listed for host %s",
|
||||
+ inet_ntoa (fromp->sin_addr), hp->h_name);
|
||||
+ errorstr = "Host address mismatch for %s\n";
|
||||
+ hostname = strdup(inet_ntoa(fromp->sin_addr));
|
||||
+ break;
|
||||
+ }
|
||||
+ if (!memcmp (hp->h_addr_list[0],
|
||||
+ (caddr_t)&fromp->sin_addr,
|
||||
+ sizeof fromp->sin_addr))
|
||||
+ {
|
||||
+ hostname = strdup(hp->h_name);
|
||||
+ break; /* equal, OK */
|
||||
+ }
|
||||
}
|
||||
- else
|
||||
- for (; ; hp->h_addr_list++)
|
||||
- {
|
||||
- if (hp->h_addr_list[0] == NULL)
|
||||
- {
|
||||
- syslog (LOG_NOTICE,
|
||||
- "Host addr %s not listed for host %s",
|
||||
- inet_ntoa (fromp->sin_addr), hp->h_name);
|
||||
- errorstr = "Host address mismatch for %s\n";
|
||||
- hostname = inet_ntoa (fromp->sin_addr);
|
||||
- break;
|
||||
- }
|
||||
- if (!memcmp (hp->h_addr_list[0],
|
||||
- (caddr_t)&fromp->sin_addr,
|
||||
- sizeof fromp->sin_addr))
|
||||
- {
|
||||
- hostname = hp->h_name;
|
||||
- break; /* equal, OK */
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
+ }
|
||||
}
|
||||
}
|
||||
else
|
||||
- errorhost = hostname = inet_ntoa (fromp->sin_addr);
|
||||
+ errorhost = hostname = strdup(inet_ntoa(fromp->sin_addr));
|
||||
|
||||
#ifdef KERBEROS
|
||||
if (use_kerberos)
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
Submitted By: Matthew Burgess <matthew@linuxfromscratch.org>
|
||||
Date: 2005-08-30
|
||||
Initial Package Version: 1.4.2
|
||||
Upstream Status: From upstream
|
||||
Origin: Greg Schafer <gschafer@zip.com.au> (http://www.diy-linux.org/downloads/patches/GCC4/inetutils-1.4.2-gcc4-fixes-1.patch)
|
||||
Description: Fix compilation issues with gcc4
|
||||
|
||||
diff -Naur inetutils-1.4.2.orig/ftp/ftp_var.h inetutils-1.4.2/ftp/ftp_var.h
|
||||
--- inetutils-1.4.2.orig/ftp/ftp_var.h 2000-07-08 01:00:53.000000000 +0000
|
||||
+++ inetutils-1.4.2/ftp/ftp_var.h 2005-08-30 20:25:27.205932304 +0000
|
||||
@@ -36,8 +36,6 @@
|
||||
#include <sys/param.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
-#include "extern.h"
|
||||
-
|
||||
#ifndef FTP_EXTERN
|
||||
#define FTP_EXTERN extern
|
||||
#endif
|
||||
@@ -129,3 +127,5 @@
|
||||
FTP_EXTERN int macnum; /* number of defined macros */
|
||||
FTP_EXTERN struct macel macros[16];
|
||||
FTP_EXTERN char macbuf[4096];
|
||||
+
|
||||
+#include "extern.h"
|
||||
diff -Naur inetutils-1.4.2.orig/libinetutils/ttymsg.c inetutils-1.4.2/libinetutils/ttymsg.c
|
||||
--- inetutils-1.4.2.orig/libinetutils/ttymsg.c 2001-11-01 15:52:19.000000000 +0000
|
||||
+++ inetutils-1.4.2/libinetutils/ttymsg.c 2005-08-30 20:24:27.168059448 +0000
|
||||
@@ -132,7 +132,7 @@
|
||||
}
|
||||
if (wret)
|
||||
{
|
||||
- (char *)iov->iov_base += wret;
|
||||
+ iov->iov_base = (char *)iov->iov_base + wret;
|
||||
iov->iov_len -= wret;
|
||||
}
|
||||
continue;
|
||||
674
src/patches/linux-3.10.39-pie_packet_sch.patch
Normal file
674
src/patches/linux-3.10.39-pie_packet_sch.patch
Normal file
@@ -0,0 +1,674 @@
|
||||
From d4b36210c2e6ecef0ce52fb6c18c51144f5c2d88 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Subramanian <vijaynsu@cisco.com>
|
||||
Date: Sat, 4 Jan 2014 17:33:55 -0800
|
||||
Subject: net: pkt_sched: PIE AQM scheme
|
||||
|
||||
Proportional Integral controller Enhanced (PIE) is a scheduler to address the
|
||||
bufferbloat problem.
|
||||
|
||||
>From the IETF draft below:
|
||||
" Bufferbloat is a phenomenon where excess buffers in the network cause high
|
||||
latency and jitter. As more and more interactive applications (e.g. voice over
|
||||
IP, real time video streaming and financial transactions) run in the Internet,
|
||||
high latency and jitter degrade application performance. There is a pressing
|
||||
need to design intelligent queue management schemes that can control latency and
|
||||
jitter; and hence provide desirable quality of service to users.
|
||||
|
||||
We present here a lightweight design, PIE(Proportional Integral controller
|
||||
Enhanced) that can effectively control the average queueing latency to a target
|
||||
value. Simulation results, theoretical analysis and Linux testbed results have
|
||||
shown that PIE can ensure low latency and achieve high link utilization under
|
||||
various congestion situations. The design does not require per-packet
|
||||
timestamp, so it incurs very small overhead and is simple enough to implement
|
||||
in both hardware and software. "
|
||||
|
||||
Many thanks to Dave Taht for extensive feedback, reviews, testing and
|
||||
suggestions. Thanks also to Stephen Hemminger and Eric Dumazet for reviews and
|
||||
suggestions. Naeem Khademi and Dave Taht independently contributed to ECN
|
||||
support.
|
||||
|
||||
For more information, please see technical paper about PIE in the IEEE
|
||||
Conference on High Performance Switching and Routing 2013. A copy of the paper
|
||||
can be found at ftp://ftpeng.cisco.com/pie/.
|
||||
|
||||
Please also refer to the IETF draft submission at
|
||||
http://tools.ietf.org/html/draft-pan-tsvwg-pie-00
|
||||
|
||||
All relevant code, documents and test scripts and results can be found at
|
||||
ftp://ftpeng.cisco.com/pie/.
|
||||
|
||||
For problems with the iproute2/tc or Linux kernel code, please contact Vijay
|
||||
Subramanian (vijaynsu@cisco.com or subramanian.vijay@gmail.com) Mythili Prabhu
|
||||
(mysuryan@cisco.com)
|
||||
|
||||
Signed-off-by: Vijay Subramanian <subramanian.vijay@gmail.com>
|
||||
Signed-off-by: Mythili Prabhu <mysuryan@cisco.com>
|
||||
CC: Dave Taht <dave.taht@bufferbloat.net>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
diff -Naur linux-3.10.39.org/include/uapi/linux/pkt_sched.h linux-3.10.39/include/uapi/linux/pkt_sched.h
|
||||
--- linux-3.10.39.org/include/uapi/linux/pkt_sched.h 2014-05-06 16:56:24.000000000 +0200
|
||||
+++ linux-3.10.39/include/uapi/linux/pkt_sched.h 2014-05-15 10:33:08.296828477 +0200
|
||||
@@ -744,4 +744,29 @@
|
||||
};
|
||||
};
|
||||
|
||||
+/* PIE */
|
||||
+enum {
|
||||
+ TCA_PIE_UNSPEC,
|
||||
+ TCA_PIE_TARGET,
|
||||
+ TCA_PIE_LIMIT,
|
||||
+ TCA_PIE_TUPDATE,
|
||||
+ TCA_PIE_ALPHA,
|
||||
+ TCA_PIE_BETA,
|
||||
+ TCA_PIE_ECN,
|
||||
+ TCA_PIE_BYTEMODE,
|
||||
+ __TCA_PIE_MAX
|
||||
+};
|
||||
+#define TCA_PIE_MAX (__TCA_PIE_MAX - 1)
|
||||
+
|
||||
+struct tc_pie_xstats {
|
||||
+ __u32 prob; /* current probability */
|
||||
+ __u32 delay; /* current delay in ms */
|
||||
+ __u32 avg_dq_rate; /* current average dq_rate in bits/pie_time */
|
||||
+ __u32 packets_in; /* total number of packets enqueued */
|
||||
+ __u32 dropped; /* packets dropped due to pie_action */
|
||||
+ __u32 overlimit; /* dropped due to lack of space in queue */
|
||||
+ __u32 maxq; /* maximum queue size */
|
||||
+ __u32 ecn_mark; /* packets marked with ecn*/
|
||||
+};
|
||||
+
|
||||
#endif
|
||||
diff -Naur linux-3.10.39.org/net/sched/Kconfig linux-3.10.39/net/sched/Kconfig
|
||||
--- linux-3.10.39.org/net/sched/Kconfig 2014-05-06 16:56:24.000000000 +0200
|
||||
+++ linux-3.10.39/net/sched/Kconfig 2014-05-15 09:30:29.866632326 +0200
|
||||
@@ -272,6 +272,19 @@
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
+config NET_SCH_PIE
|
||||
+ tristate "Proportional Integral controller Enhanced (PIE) scheduler"
|
||||
+ help
|
||||
+ Say Y here if you want to use the Proportional Integral controller
|
||||
+ Enhanced scheduler packet scheduling algorithm.
|
||||
+ For more information, please see
|
||||
+ http://tools.ietf.org/html/draft-pan-tsvwg-pie-00
|
||||
+
|
||||
+ To compile this driver as a module, choose M here: the module
|
||||
+ will be called sch_pie.
|
||||
+
|
||||
+ If unsure, say N.
|
||||
+
|
||||
config NET_SCH_INGRESS
|
||||
tristate "Ingress Qdisc"
|
||||
depends on NET_CLS_ACT
|
||||
diff -Naur linux-3.10.39.org/net/sched/Makefile linux-3.10.39/net/sched/Makefile
|
||||
--- linux-3.10.39.org/net/sched/Makefile 2014-05-06 16:56:24.000000000 +0200
|
||||
+++ linux-3.10.39/net/sched/Makefile 2014-05-15 10:34:55.533502406 +0200
|
||||
@@ -39,6 +39,7 @@
|
||||
obj-$(CONFIG_NET_SCH_QFQ) += sch_qfq.o
|
||||
obj-$(CONFIG_NET_SCH_CODEL) += sch_codel.o
|
||||
obj-$(CONFIG_NET_SCH_FQ_CODEL) += sch_fq_codel.o
|
||||
+obj-$(CONFIG_NET_SCH_PIE) += sch_pie.o
|
||||
|
||||
obj-$(CONFIG_NET_CLS_U32) += cls_u32.o
|
||||
obj-$(CONFIG_NET_CLS_ROUTE4) += cls_route.o
|
||||
diff -Naur linux-3.10.39.org/net/sched/sch_pie.c linux-3.10.39/net/sched/sch_pie.c
|
||||
--- linux-3.10.39.org/net/sched/sch_pie.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ linux-3.10.39/net/sched/sch_pie.c 2014-05-15 09:30:29.869966724 +0200
|
||||
@@ -0,0 +1,555 @@
|
||||
+/* Copyright (C) 2013 Cisco Systems, Inc, 2013.
|
||||
+ *
|
||||
+ * 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 2
|
||||
+ * of the License.
|
||||
+ *
|
||||
+ * 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.
|
||||
+ *
|
||||
+ * Author: Vijay Subramanian <vijaynsu@cisco.com>
|
||||
+ * Author: Mythili Prabhu <mysuryan@cisco.com>
|
||||
+ *
|
||||
+ * ECN support is added by Naeem Khademi <naeemk@ifi.uio.no>
|
||||
+ * University of Oslo, Norway.
|
||||
+ */
|
||||
+
|
||||
+#include <linux/module.h>
|
||||
+#include <linux/slab.h>
|
||||
+#include <linux/types.h>
|
||||
+#include <linux/kernel.h>
|
||||
+#include <linux/errno.h>
|
||||
+#include <linux/skbuff.h>
|
||||
+#include <net/pkt_sched.h>
|
||||
+#include <net/inet_ecn.h>
|
||||
+
|
||||
+#define QUEUE_THRESHOLD 10000
|
||||
+#define DQCOUNT_INVALID -1
|
||||
+#define MAX_PROB 0xffffffff
|
||||
+#define PIE_SCALE 8
|
||||
+
|
||||
+/* parameters used */
|
||||
+struct pie_params {
|
||||
+ psched_time_t target; /* user specified target delay in pschedtime */
|
||||
+ u32 tupdate; /* timer frequency (in jiffies) */
|
||||
+ u32 limit; /* number of packets that can be enqueued */
|
||||
+ u32 alpha; /* alpha and beta are between -4 and 4 */
|
||||
+ u32 beta; /* and are used for shift relative to 1 */
|
||||
+ bool ecn; /* true if ecn is enabled */
|
||||
+ bool bytemode; /* to scale drop early prob based on pkt size */
|
||||
+};
|
||||
+
|
||||
+/* variables used */
|
||||
+struct pie_vars {
|
||||
+ u32 prob; /* probability but scaled by u32 limit. */
|
||||
+ psched_time_t burst_time;
|
||||
+ psched_time_t qdelay;
|
||||
+ psched_time_t qdelay_old;
|
||||
+ u64 dq_count; /* measured in bytes */
|
||||
+ psched_time_t dq_tstamp; /* drain rate */
|
||||
+ u32 avg_dq_rate; /* bytes per pschedtime tick,scaled */
|
||||
+ u32 qlen_old; /* in bytes */
|
||||
+};
|
||||
+
|
||||
+/* statistics gathering */
|
||||
+struct pie_stats {
|
||||
+ u32 packets_in; /* total number of packets enqueued */
|
||||
+ u32 dropped; /* packets dropped due to pie_action */
|
||||
+ u32 overlimit; /* dropped due to lack of space in queue */
|
||||
+ u32 maxq; /* maximum queue size */
|
||||
+ u32 ecn_mark; /* packets marked with ECN */
|
||||
+};
|
||||
+
|
||||
+/* private data for the Qdisc */
|
||||
+struct pie_sched_data {
|
||||
+ struct pie_params params;
|
||||
+ struct pie_vars vars;
|
||||
+ struct pie_stats stats;
|
||||
+ struct timer_list adapt_timer;
|
||||
+};
|
||||
+
|
||||
+static void pie_params_init(struct pie_params *params)
|
||||
+{
|
||||
+ params->alpha = 2;
|
||||
+ params->beta = 20;
|
||||
+ params->tupdate = usecs_to_jiffies(30 * USEC_PER_MSEC); /* 30 ms */
|
||||
+ params->limit = 1000; /* default of 1000 packets */
|
||||
+ params->target = PSCHED_NS2TICKS(20 * NSEC_PER_MSEC); /* 20 ms */
|
||||
+ params->ecn = false;
|
||||
+ params->bytemode = false;
|
||||
+}
|
||||
+
|
||||
+static void pie_vars_init(struct pie_vars *vars)
|
||||
+{
|
||||
+ vars->dq_count = DQCOUNT_INVALID;
|
||||
+ vars->avg_dq_rate = 0;
|
||||
+ /* default of 100 ms in pschedtime */
|
||||
+ vars->burst_time = PSCHED_NS2TICKS(100 * NSEC_PER_MSEC);
|
||||
+}
|
||||
+
|
||||
+static bool drop_early(struct Qdisc *sch, u32 packet_size)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ u32 rnd;
|
||||
+ u32 local_prob = q->vars.prob;
|
||||
+ u32 mtu = psched_mtu(qdisc_dev(sch));
|
||||
+
|
||||
+ /* If there is still burst allowance left skip random early drop */
|
||||
+ if (q->vars.burst_time > 0)
|
||||
+ return false;
|
||||
+
|
||||
+ /* If current delay is less than half of target, and
|
||||
+ * if drop prob is low already, disable early_drop
|
||||
+ */
|
||||
+ if ((q->vars.qdelay < q->params.target / 2)
|
||||
+ && (q->vars.prob < MAX_PROB / 5))
|
||||
+ return false;
|
||||
+
|
||||
+ /* If we have fewer than 2 mtu-sized packets, disable drop_early,
|
||||
+ * similar to min_th in RED
|
||||
+ */
|
||||
+ if (sch->qstats.backlog < 2 * mtu)
|
||||
+ return false;
|
||||
+
|
||||
+ /* If bytemode is turned on, use packet size to compute new
|
||||
+ * probablity. Smaller packets will have lower drop prob in this case
|
||||
+ */
|
||||
+ if (q->params.bytemode && packet_size <= mtu)
|
||||
+ local_prob = (local_prob / mtu) * packet_size;
|
||||
+ else
|
||||
+ local_prob = q->vars.prob;
|
||||
+
|
||||
+ rnd = net_random();
|
||||
+ if (rnd < local_prob)
|
||||
+ return true;
|
||||
+
|
||||
+ return false;
|
||||
+}
|
||||
+
|
||||
+static int pie_qdisc_enqueue(struct sk_buff *skb, struct Qdisc *sch)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ bool enqueue = false;
|
||||
+
|
||||
+ if (unlikely(qdisc_qlen(sch) >= sch->limit)) {
|
||||
+ q->stats.overlimit++;
|
||||
+ goto out;
|
||||
+ }
|
||||
+
|
||||
+ if (!drop_early(sch, skb->len)) {
|
||||
+ enqueue = true;
|
||||
+ } else if (q->params.ecn && (q->vars.prob <= MAX_PROB / 10) &&
|
||||
+ INET_ECN_set_ce(skb)) {
|
||||
+ /* If packet is ecn capable, mark it if drop probability
|
||||
+ * is lower than 10%, else drop it.
|
||||
+ */
|
||||
+ q->stats.ecn_mark++;
|
||||
+ enqueue = true;
|
||||
+ }
|
||||
+
|
||||
+ /* we can enqueue the packet */
|
||||
+ if (enqueue) {
|
||||
+ q->stats.packets_in++;
|
||||
+ if (qdisc_qlen(sch) > q->stats.maxq)
|
||||
+ q->stats.maxq = qdisc_qlen(sch);
|
||||
+
|
||||
+ return qdisc_enqueue_tail(skb, sch);
|
||||
+ }
|
||||
+
|
||||
+out:
|
||||
+ q->stats.dropped++;
|
||||
+ return qdisc_drop(skb, sch);
|
||||
+}
|
||||
+
|
||||
+static const struct nla_policy pie_policy[TCA_PIE_MAX + 1] = {
|
||||
+ [TCA_PIE_TARGET] = {.type = NLA_U32},
|
||||
+ [TCA_PIE_LIMIT] = {.type = NLA_U32},
|
||||
+ [TCA_PIE_TUPDATE] = {.type = NLA_U32},
|
||||
+ [TCA_PIE_ALPHA] = {.type = NLA_U32},
|
||||
+ [TCA_PIE_BETA] = {.type = NLA_U32},
|
||||
+ [TCA_PIE_ECN] = {.type = NLA_U32},
|
||||
+ [TCA_PIE_BYTEMODE] = {.type = NLA_U32},
|
||||
+};
|
||||
+
|
||||
+static int pie_change(struct Qdisc *sch, struct nlattr *opt)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ struct nlattr *tb[TCA_PIE_MAX + 1];
|
||||
+ unsigned int qlen;
|
||||
+ int err;
|
||||
+
|
||||
+ if (!opt)
|
||||
+ return -EINVAL;
|
||||
+
|
||||
+ err = nla_parse_nested(tb, TCA_PIE_MAX, opt, pie_policy);
|
||||
+ if (err < 0)
|
||||
+ return err;
|
||||
+
|
||||
+ sch_tree_lock(sch);
|
||||
+
|
||||
+ /* convert from microseconds to pschedtime */
|
||||
+ if (tb[TCA_PIE_TARGET]) {
|
||||
+ /* target is in us */
|
||||
+ u32 target = nla_get_u32(tb[TCA_PIE_TARGET]);
|
||||
+
|
||||
+ /* convert to pschedtime */
|
||||
+ q->params.target = PSCHED_NS2TICKS((u64)target * NSEC_PER_USEC);
|
||||
+ }
|
||||
+
|
||||
+ /* tupdate is in jiffies */
|
||||
+ if (tb[TCA_PIE_TUPDATE])
|
||||
+ q->params.tupdate = usecs_to_jiffies(nla_get_u32(tb[TCA_PIE_TUPDATE]));
|
||||
+
|
||||
+ if (tb[TCA_PIE_LIMIT]) {
|
||||
+ u32 limit = nla_get_u32(tb[TCA_PIE_LIMIT]);
|
||||
+
|
||||
+ q->params.limit = limit;
|
||||
+ sch->limit = limit;
|
||||
+ }
|
||||
+
|
||||
+ if (tb[TCA_PIE_ALPHA])
|
||||
+ q->params.alpha = nla_get_u32(tb[TCA_PIE_ALPHA]);
|
||||
+
|
||||
+ if (tb[TCA_PIE_BETA])
|
||||
+ q->params.beta = nla_get_u32(tb[TCA_PIE_BETA]);
|
||||
+
|
||||
+ if (tb[TCA_PIE_ECN])
|
||||
+ q->params.ecn = nla_get_u32(tb[TCA_PIE_ECN]);
|
||||
+
|
||||
+ if (tb[TCA_PIE_BYTEMODE])
|
||||
+ q->params.bytemode = nla_get_u32(tb[TCA_PIE_BYTEMODE]);
|
||||
+
|
||||
+ /* Drop excess packets if new limit is lower */
|
||||
+ qlen = sch->q.qlen;
|
||||
+ while (sch->q.qlen > sch->limit) {
|
||||
+ struct sk_buff *skb = __skb_dequeue(&sch->q);
|
||||
+
|
||||
+ sch->qstats.backlog -= qdisc_pkt_len(skb);
|
||||
+ qdisc_drop(skb, sch);
|
||||
+ }
|
||||
+ qdisc_tree_decrease_qlen(sch, qlen - sch->q.qlen);
|
||||
+
|
||||
+ sch_tree_unlock(sch);
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static void pie_process_dequeue(struct Qdisc *sch, struct sk_buff *skb)
|
||||
+{
|
||||
+
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ int qlen = sch->qstats.backlog; /* current queue size in bytes */
|
||||
+
|
||||
+ /* If current queue is about 10 packets or more and dq_count is unset
|
||||
+ * we have enough packets to calculate the drain rate. Save
|
||||
+ * current time as dq_tstamp and start measurement cycle.
|
||||
+ */
|
||||
+ if (qlen >= QUEUE_THRESHOLD && q->vars.dq_count == DQCOUNT_INVALID) {
|
||||
+ q->vars.dq_tstamp = psched_get_time();
|
||||
+ q->vars.dq_count = 0;
|
||||
+ }
|
||||
+
|
||||
+ /* Calculate the average drain rate from this value. If queue length
|
||||
+ * has receded to a small value viz., <= QUEUE_THRESHOLD bytes,reset
|
||||
+ * the dq_count to -1 as we don't have enough packets to calculate the
|
||||
+ * drain rate anymore The following if block is entered only when we
|
||||
+ * have a substantial queue built up (QUEUE_THRESHOLD bytes or more)
|
||||
+ * and we calculate the drain rate for the threshold here. dq_count is
|
||||
+ * in bytes, time difference in psched_time, hence rate is in
|
||||
+ * bytes/psched_time.
|
||||
+ */
|
||||
+ if (q->vars.dq_count != DQCOUNT_INVALID) {
|
||||
+ q->vars.dq_count += skb->len;
|
||||
+
|
||||
+ if (q->vars.dq_count >= QUEUE_THRESHOLD) {
|
||||
+ psched_time_t now = psched_get_time();
|
||||
+ u32 dtime = now - q->vars.dq_tstamp;
|
||||
+ u32 count = q->vars.dq_count << PIE_SCALE;
|
||||
+
|
||||
+ if (dtime == 0)
|
||||
+ return;
|
||||
+
|
||||
+ count = count / dtime;
|
||||
+
|
||||
+ if (q->vars.avg_dq_rate == 0)
|
||||
+ q->vars.avg_dq_rate = count;
|
||||
+ else
|
||||
+ q->vars.avg_dq_rate =
|
||||
+ (q->vars.avg_dq_rate -
|
||||
+ (q->vars.avg_dq_rate >> 3)) + (count >> 3);
|
||||
+
|
||||
+ /* If the queue has receded below the threshold, we hold
|
||||
+ * on to the last drain rate calculated, else we reset
|
||||
+ * dq_count to 0 to re-enter the if block when the next
|
||||
+ * packet is dequeued
|
||||
+ */
|
||||
+ if (qlen < QUEUE_THRESHOLD)
|
||||
+ q->vars.dq_count = DQCOUNT_INVALID;
|
||||
+ else {
|
||||
+ q->vars.dq_count = 0;
|
||||
+ q->vars.dq_tstamp = psched_get_time();
|
||||
+ }
|
||||
+
|
||||
+ if (q->vars.burst_time > 0) {
|
||||
+ if (q->vars.burst_time > dtime)
|
||||
+ q->vars.burst_time -= dtime;
|
||||
+ else
|
||||
+ q->vars.burst_time = 0;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static void calculate_probability(struct Qdisc *sch)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ u32 qlen = sch->qstats.backlog; /* queue size in bytes */
|
||||
+ psched_time_t qdelay = 0; /* in pschedtime */
|
||||
+ psched_time_t qdelay_old = q->vars.qdelay; /* in pschedtime */
|
||||
+ s32 delta = 0; /* determines the change in probability */
|
||||
+ u32 oldprob;
|
||||
+ u32 alpha, beta;
|
||||
+ bool update_prob = true;
|
||||
+
|
||||
+ q->vars.qdelay_old = q->vars.qdelay;
|
||||
+
|
||||
+ if (q->vars.avg_dq_rate > 0)
|
||||
+ qdelay = (qlen << PIE_SCALE) / q->vars.avg_dq_rate;
|
||||
+ else
|
||||
+ qdelay = 0;
|
||||
+
|
||||
+ /* If qdelay is zero and qlen is not, it means qlen is very small, less
|
||||
+ * than dequeue_rate, so we do not update probabilty in this round
|
||||
+ */
|
||||
+ if (qdelay == 0 && qlen != 0)
|
||||
+ update_prob = false;
|
||||
+
|
||||
+ /* Add ranges for alpha and beta, more aggressive for high dropping
|
||||
+ * mode and gentle steps for light dropping mode
|
||||
+ * In light dropping mode, take gentle steps; in medium dropping mode,
|
||||
+ * take medium steps; in high dropping mode, take big steps.
|
||||
+ */
|
||||
+ if (q->vars.prob < MAX_PROB / 100) {
|
||||
+ alpha =
|
||||
+ (q->params.alpha * (MAX_PROB / PSCHED_TICKS_PER_SEC)) >> 7;
|
||||
+ beta =
|
||||
+ (q->params.beta * (MAX_PROB / PSCHED_TICKS_PER_SEC)) >> 7;
|
||||
+ } else if (q->vars.prob < MAX_PROB / 10) {
|
||||
+ alpha =
|
||||
+ (q->params.alpha * (MAX_PROB / PSCHED_TICKS_PER_SEC)) >> 5;
|
||||
+ beta =
|
||||
+ (q->params.beta * (MAX_PROB / PSCHED_TICKS_PER_SEC)) >> 5;
|
||||
+ } else {
|
||||
+ alpha =
|
||||
+ (q->params.alpha * (MAX_PROB / PSCHED_TICKS_PER_SEC)) >> 4;
|
||||
+ beta =
|
||||
+ (q->params.beta * (MAX_PROB / PSCHED_TICKS_PER_SEC)) >> 4;
|
||||
+ }
|
||||
+
|
||||
+ /* alpha and beta should be between 0 and 32, in multiples of 1/16 */
|
||||
+ delta += alpha * ((qdelay - q->params.target));
|
||||
+ delta += beta * ((qdelay - qdelay_old));
|
||||
+
|
||||
+ oldprob = q->vars.prob;
|
||||
+
|
||||
+ /* to ensure we increase probability in steps of no more than 2% */
|
||||
+ if (delta > (s32) (MAX_PROB / (100 / 2)) &&
|
||||
+ q->vars.prob >= MAX_PROB / 10)
|
||||
+ delta = (MAX_PROB / 100) * 2;
|
||||
+
|
||||
+ /* Non-linear drop:
|
||||
+ * Tune drop probability to increase quickly for high delays(>= 250ms)
|
||||
+ * 250ms is derived through experiments and provides error protection
|
||||
+ */
|
||||
+
|
||||
+ if (qdelay > (PSCHED_NS2TICKS(250 * NSEC_PER_MSEC)))
|
||||
+ delta += MAX_PROB / (100 / 2);
|
||||
+
|
||||
+ q->vars.prob += delta;
|
||||
+
|
||||
+ if (delta > 0) {
|
||||
+ /* prevent overflow */
|
||||
+ if (q->vars.prob < oldprob) {
|
||||
+ q->vars.prob = MAX_PROB;
|
||||
+ /* Prevent normalization error. If probability is at
|
||||
+ * maximum value already, we normalize it here, and
|
||||
+ * skip the check to do a non-linear drop in the next
|
||||
+ * section.
|
||||
+ */
|
||||
+ update_prob = false;
|
||||
+ }
|
||||
+ } else {
|
||||
+ /* prevent underflow */
|
||||
+ if (q->vars.prob > oldprob)
|
||||
+ q->vars.prob = 0;
|
||||
+ }
|
||||
+
|
||||
+ /* Non-linear drop in probability: Reduce drop probability quickly if
|
||||
+ * delay is 0 for 2 consecutive Tupdate periods.
|
||||
+ */
|
||||
+
|
||||
+ if ((qdelay == 0) && (qdelay_old == 0) && update_prob)
|
||||
+ q->vars.prob = (q->vars.prob * 98) / 100;
|
||||
+
|
||||
+ q->vars.qdelay = qdelay;
|
||||
+ q->vars.qlen_old = qlen;
|
||||
+
|
||||
+ /* We restart the measurement cycle if the following conditions are met
|
||||
+ * 1. If the delay has been low for 2 consecutive Tupdate periods
|
||||
+ * 2. Calculated drop probability is zero
|
||||
+ * 3. We have atleast one estimate for the avg_dq_rate ie.,
|
||||
+ * is a non-zero value
|
||||
+ */
|
||||
+ if ((q->vars.qdelay < q->params.target / 2) &&
|
||||
+ (q->vars.qdelay_old < q->params.target / 2) &&
|
||||
+ (q->vars.prob == 0) &&
|
||||
+ (q->vars.avg_dq_rate > 0))
|
||||
+ pie_vars_init(&q->vars);
|
||||
+}
|
||||
+
|
||||
+static void pie_timer(unsigned long arg)
|
||||
+{
|
||||
+ struct Qdisc *sch = (struct Qdisc *)arg;
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ spinlock_t *root_lock = qdisc_lock(qdisc_root_sleeping(sch));
|
||||
+
|
||||
+ spin_lock(root_lock);
|
||||
+ calculate_probability(sch);
|
||||
+
|
||||
+ /* reset the timer to fire after 'tupdate'. tupdate is in jiffies. */
|
||||
+ if (q->params.tupdate)
|
||||
+ mod_timer(&q->adapt_timer, jiffies + q->params.tupdate);
|
||||
+ spin_unlock(root_lock);
|
||||
+
|
||||
+}
|
||||
+
|
||||
+static int pie_init(struct Qdisc *sch, struct nlattr *opt)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+
|
||||
+ pie_params_init(&q->params);
|
||||
+ pie_vars_init(&q->vars);
|
||||
+ sch->limit = q->params.limit;
|
||||
+
|
||||
+ setup_timer(&q->adapt_timer, pie_timer, (unsigned long)sch);
|
||||
+ mod_timer(&q->adapt_timer, jiffies + HZ / 2);
|
||||
+
|
||||
+ if (opt) {
|
||||
+ int err = pie_change(sch, opt);
|
||||
+
|
||||
+ if (err)
|
||||
+ return err;
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int pie_dump(struct Qdisc *sch, struct sk_buff *skb)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ struct nlattr *opts;
|
||||
+
|
||||
+ opts = nla_nest_start(skb, TCA_OPTIONS);
|
||||
+ if (opts == NULL)
|
||||
+ goto nla_put_failure;
|
||||
+
|
||||
+ /* convert target from pschedtime to us */
|
||||
+ if (nla_put_u32(skb, TCA_PIE_TARGET,
|
||||
+ ((u32) PSCHED_TICKS2NS(q->params.target)) /
|
||||
+ NSEC_PER_USEC) ||
|
||||
+ nla_put_u32(skb, TCA_PIE_LIMIT, sch->limit) ||
|
||||
+ nla_put_u32(skb, TCA_PIE_TUPDATE, jiffies_to_usecs(q->params.tupdate)) ||
|
||||
+ nla_put_u32(skb, TCA_PIE_ALPHA, q->params.alpha) ||
|
||||
+ nla_put_u32(skb, TCA_PIE_BETA, q->params.beta) ||
|
||||
+ nla_put_u32(skb, TCA_PIE_ECN, q->params.ecn) ||
|
||||
+ nla_put_u32(skb, TCA_PIE_BYTEMODE, q->params.bytemode))
|
||||
+ goto nla_put_failure;
|
||||
+
|
||||
+ return nla_nest_end(skb, opts);
|
||||
+
|
||||
+nla_put_failure:
|
||||
+ nla_nest_cancel(skb, opts);
|
||||
+ return -1;
|
||||
+
|
||||
+}
|
||||
+
|
||||
+static int pie_dump_stats(struct Qdisc *sch, struct gnet_dump *d)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ struct tc_pie_xstats st = {
|
||||
+ .prob = q->vars.prob,
|
||||
+ .delay = ((u32) PSCHED_TICKS2NS(q->vars.qdelay)) /
|
||||
+ NSEC_PER_USEC,
|
||||
+ /* unscale and return dq_rate in bytes per sec */
|
||||
+ .avg_dq_rate = q->vars.avg_dq_rate *
|
||||
+ (PSCHED_TICKS_PER_SEC) >> PIE_SCALE,
|
||||
+ .packets_in = q->stats.packets_in,
|
||||
+ .overlimit = q->stats.overlimit,
|
||||
+ .maxq = q->stats.maxq,
|
||||
+ .dropped = q->stats.dropped,
|
||||
+ .ecn_mark = q->stats.ecn_mark,
|
||||
+ };
|
||||
+
|
||||
+ return gnet_stats_copy_app(d, &st, sizeof(st));
|
||||
+}
|
||||
+
|
||||
+static struct sk_buff *pie_qdisc_dequeue(struct Qdisc *sch)
|
||||
+{
|
||||
+ struct sk_buff *skb;
|
||||
+ skb = __qdisc_dequeue_head(sch, &sch->q);
|
||||
+
|
||||
+ if (!skb)
|
||||
+ return NULL;
|
||||
+
|
||||
+ pie_process_dequeue(sch, skb);
|
||||
+ return skb;
|
||||
+}
|
||||
+
|
||||
+static void pie_reset(struct Qdisc *sch)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ qdisc_reset_queue(sch);
|
||||
+ pie_vars_init(&q->vars);
|
||||
+}
|
||||
+
|
||||
+static void pie_destroy(struct Qdisc *sch)
|
||||
+{
|
||||
+ struct pie_sched_data *q = qdisc_priv(sch);
|
||||
+ q->params.tupdate = 0;
|
||||
+ del_timer_sync(&q->adapt_timer);
|
||||
+}
|
||||
+
|
||||
+static struct Qdisc_ops pie_qdisc_ops __read_mostly = {
|
||||
+ .id = "pie",
|
||||
+ .priv_size = sizeof(struct pie_sched_data),
|
||||
+ .enqueue = pie_qdisc_enqueue,
|
||||
+ .dequeue = pie_qdisc_dequeue,
|
||||
+ .peek = qdisc_peek_dequeued,
|
||||
+ .init = pie_init,
|
||||
+ .destroy = pie_destroy,
|
||||
+ .reset = pie_reset,
|
||||
+ .change = pie_change,
|
||||
+ .dump = pie_dump,
|
||||
+ .dump_stats = pie_dump_stats,
|
||||
+ .owner = THIS_MODULE,
|
||||
+};
|
||||
+
|
||||
+static int __init pie_module_init(void)
|
||||
+{
|
||||
+ return register_qdisc(&pie_qdisc_ops);
|
||||
+}
|
||||
+
|
||||
+static void __exit pie_module_exit(void)
|
||||
+{
|
||||
+ unregister_qdisc(&pie_qdisc_ops);
|
||||
+}
|
||||
+
|
||||
+module_init(pie_module_init);
|
||||
+module_exit(pie_module_exit);
|
||||
+
|
||||
+MODULE_DESCRIPTION("Proportional Integral controller Enhanced (PIE) scheduler");
|
||||
+MODULE_AUTHOR("Vijay Subramanian");
|
||||
+MODULE_AUTHOR("Mythili Prabhu");
|
||||
+MODULE_LICENSE("GPL");
|
||||
52
src/patches/net-tools-1.60-no-hostname.patch
Normal file
52
src/patches/net-tools-1.60-no-hostname.patch
Normal file
@@ -0,0 +1,52 @@
|
||||
--- a/Makefile.bak 2014-06-03 19:01:39.758845492 +0000
|
||||
+++ b/Makefile 2014-06-03 19:02:34.119171419 +0000
|
||||
@@ -76,7 +76,7 @@
|
||||
NET_LIB_PATH = lib
|
||||
NET_LIB_NAME = net-tools
|
||||
|
||||
-PROGS := ifconfig hostname arp netstat route rarp slattach plipconfig nameif
|
||||
+PROGS := ifconfig arp netstat route rarp slattach plipconfig nameif
|
||||
|
||||
-include config.make
|
||||
ifeq ($(HAVE_IP_TOOLS),1)
|
||||
@@ -190,9 +190,6 @@
|
||||
nameif: nameif.o
|
||||
$(CC) $(LDFLAGS) -o nameif nameif.o
|
||||
|
||||
-hostname: hostname.o
|
||||
- $(CC) $(LDFLAGS) -o hostname hostname.o $(DNLIB)
|
||||
-
|
||||
route: $(NET_LIB) route.o
|
||||
$(CC) $(LDFLAGS) -o route route.o $(NLIB) $(RESLIB)
|
||||
|
||||
@@ -224,7 +221,6 @@
|
||||
install -m 0755 -d ${BASEDIR}/sbin
|
||||
install -m 0755 -d ${BASEDIR}/bin
|
||||
install -m 0755 arp ${BASEDIR}/sbin
|
||||
- install -m 0755 hostname ${BASEDIR}/bin
|
||||
install -m 0755 ifconfig ${BASEDIR}/sbin
|
||||
install -m 0755 nameif ${BASEDIR}/sbin
|
||||
install -m 0755 netstat ${BASEDIR}/bin
|
||||
@@ -239,21 +235,11 @@
|
||||
ifeq ($(HAVE_MII),1)
|
||||
install -m 0755 mii-tool $(BASEDIR)/sbin
|
||||
endif
|
||||
- ln -fs hostname $(BASEDIR)/bin/dnsdomainname
|
||||
- ln -fs hostname $(BASEDIR)/bin/ypdomainname
|
||||
- ln -fs hostname $(BASEDIR)/bin/nisdomainname
|
||||
- ln -fs hostname $(BASEDIR)/bin/domainname
|
||||
-ifeq ($(HAVE_AFDECnet),1)
|
||||
- ln -fs hostname $(BASEDIR)/bin/nodename
|
||||
-endif
|
||||
|
||||
savebin:
|
||||
@for i in ${BASEDIR}/sbin/arp ${BASEDIR}/sbin/ifconfig \
|
||||
${BASEDIR}/bin/netstat \
|
||||
- ${BASEDIR}/sbin/rarp ${BASEDIR}/sbin/route \
|
||||
- ${BASEDIR}/bin/hostname ${BASEDIR}/bin/ypdomainname \
|
||||
- ${BASEDIR}/bin/dnsdomainname ${BASEDIR}/bin/nisdomainname \
|
||||
- ${BASEDIR}/bin/domainname ; do \
|
||||
+ ${BASEDIR}/sbin/rarp ${BASEDIR}/sbin/route; do \
|
||||
[ -f $$i ] && cp -f $$i $$i.old ; done ; echo Saved.
|
||||
|
||||
installdata:
|
||||
185
src/patches/squidclamav-5.11-squid-helper-protocol.patch
Normal file
185
src/patches/squidclamav-5.11-squid-helper-protocol.patch
Normal file
@@ -0,0 +1,185 @@
|
||||
diff -Naur squidclamav-5.11.org/src/squidclamav.c squidclamav-5.11/src/squidclamav.c
|
||||
--- squidclamav-5.11.org/src/squidclamav.c 2012-10-29 09:46:06.000000000 +0100
|
||||
+++ squidclamav-5.11/src/squidclamav.c 2014-06-03 12:26:36.215696508 +0200
|
||||
@@ -483,7 +483,7 @@
|
||||
aren't appropriate, then just echo back the line from stdin */
|
||||
if (buff_status == 1) {
|
||||
logit(log_file, "DEBUG Invalid input buffer, aborting: %s\n", sbuff);
|
||||
- puts("");
|
||||
+ puts("BH message=\"Invalid input buffer\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -496,7 +496,7 @@
|
||||
logit(log_file, "DEBUG No squidguard and no antivir check (TRUSTUSER match) for user: %s\n", in_buff.ident);
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"TRUSTUSER match\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -508,7 +508,7 @@
|
||||
logit(log_file, "DEBUG No squidguard and no antivir check (TRUSTCLIENT match) for address: %s/%s\n",in_buff.ipaddress, in_buff.fqdn);
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"TRUSTCLIENT match\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -520,7 +520,7 @@
|
||||
logit(log_file, "DEBUG No squidguard and no antivir check (WHITELIST match) for url: %s\n", in_buff.url);
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"WHITLIST match\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -536,7 +536,7 @@
|
||||
if ((sockd = dconnect ()) < 0)
|
||||
{
|
||||
logit(log_file, "ERROR Can't connect to Clamd daemon, fallback to Squid.\n");
|
||||
- puts("");
|
||||
+ puts("BH message=\"Cannot connect to clamd\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -546,7 +546,7 @@
|
||||
if (write (sockd, "zINSTREAM", 10) <= 0)
|
||||
{
|
||||
logit(log_file, "ERROR Can't write to Clamd socket.\n");
|
||||
- puts("");
|
||||
+ puts("BG message=\"Cannot write to clamd socket\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -614,8 +614,7 @@
|
||||
logit(log_file, "Squid Cache purged of url %s.\n", in_buff.url);
|
||||
}
|
||||
}
|
||||
- fprintf (stdout, "%s %s %s %s\n", urlredir,
|
||||
- in_buff.src_address, in_buff.ident, in_buff.method);
|
||||
+ fprintf (stdout, "OK rewrite-url=\"%s\"\n", urlredir);
|
||||
fflush(stdout);
|
||||
xfree(urlredir);
|
||||
if (debug != 0)
|
||||
@@ -675,7 +674,7 @@
|
||||
continue operation (so that Squid still works!),
|
||||
we simply echo stdin to stdout - i.e. "bridge mode" :-) */
|
||||
if (bridge_mode == 1) {
|
||||
- puts("");
|
||||
+ puts("ERR message=\"brigde mode\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -685,7 +684,7 @@
|
||||
if (buff_status == -1) {
|
||||
if (debug > 2)
|
||||
logit(log_file, "DEBUG method is not GET skipping virus scan.\n");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"method is not GET skipping virus scan\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -699,7 +698,7 @@
|
||||
timeit(g_start, "Total");
|
||||
|
||||
/* no replacement for the URL was found */
|
||||
- puts("");
|
||||
+ puts("ERR message=\"ABORT match\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
|
||||
@@ -750,7 +749,7 @@
|
||||
logit(log_file, "DEBUG HIT Cache found, trust cache enabled, skipping...\n");
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"cache hit found\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -762,7 +761,7 @@
|
||||
logit(log_file, "ERROR No content length from url %s\n", in_buff.url);
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"no content length from URL\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -775,7 +774,7 @@
|
||||
logit(log_file, "DEBUG No antivir check (Content length is upper than maxsize): %'.2f > %'.2f\n", usize, maxsize);
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"content length is upper than maxsize\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -787,7 +786,7 @@
|
||||
in_buff.url);
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"no content type from URL\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -799,7 +798,7 @@
|
||||
logit(log_file, "DEBUG No antivir check (ABORTCONTENT match) for content-type: %s\n", content_type);
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"ABORTCONTENT match\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -814,7 +813,7 @@
|
||||
if ((sockd = dconnect ()) < 0)
|
||||
{
|
||||
logit(log_file, "ERROR Can't connect to Clamd daemon, fallback to Squid.\n");
|
||||
- puts("");
|
||||
+ puts("BH message=\"cannot connect clamd daemon\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -824,7 +823,7 @@
|
||||
if (write (sockd, "zINSTREAM", 10) <= 0)
|
||||
{
|
||||
logit(log_file, "ERROR Can't write to Clamd socket.\n");
|
||||
- puts("");
|
||||
+ puts("BH message=\"cannot write to clamd socket\"");
|
||||
fflush(stdout);
|
||||
continue;
|
||||
}
|
||||
@@ -844,7 +843,7 @@
|
||||
close (sockd);
|
||||
if (debug > 1)
|
||||
logit(log_file, "DEBUG Connection to clamd closed.\n");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"connection to clamd closed\"");
|
||||
fflush(stdout);
|
||||
if (statit == 1)
|
||||
timeit(g_start, "Total");
|
||||
@@ -892,8 +891,7 @@
|
||||
logit(log_file, "Squid Cache purged of url %s.\n", in_buff.url);
|
||||
}
|
||||
}
|
||||
- fprintf (stdout, "%s %s %s %s\n", urlredir,
|
||||
- in_buff.src_address, in_buff.ident, in_buff.method);
|
||||
+ fprintf (stdout, "OK rewrite-url=\"%s\"\n", urlredir);
|
||||
fflush(stdout);
|
||||
xfree(urlredir);
|
||||
if (debug != 0)
|
||||
@@ -911,7 +909,7 @@
|
||||
if (virusfound == 0) {
|
||||
if (debug != 0)
|
||||
logit(log_file, "DEBUG No virus detected.\n");
|
||||
- puts("");
|
||||
+ puts("ERR message=\"no virus detected\"");
|
||||
fflush(stdout);
|
||||
}
|
||||
}
|
||||
75
src/patches/squidguard-1.4-squid-helper-protocol.patch
Normal file
75
src/patches/squidguard-1.4-squid-helper-protocol.patch
Normal file
@@ -0,0 +1,75 @@
|
||||
http://bugs.squid-cache.org/show_bug.cgi?id=3978
|
||||
|
||||
--- squidGuard-1.4.orig/src/main.c 2013-12-11 17:42:15.000000000 +1300
|
||||
+++ squidGuard-1.4.orig/src/main.c 2013-12-11 19:04:09.000000000 +1300
|
||||
@@ -175,7 +175,7 @@
|
||||
sgReloadConfig();
|
||||
}
|
||||
if(failsafe_mode) {
|
||||
- puts("");
|
||||
+ puts("ERR message=\"squidGuard failsafe mode\"");
|
||||
fflush(stdout);
|
||||
if(sig_hup){
|
||||
sgReloadConfig();
|
||||
@@ -184,7 +184,7 @@
|
||||
}
|
||||
if(parseLine(buf,&squidInfo) != 1){
|
||||
sgLogError("Error parsing squid line: %s",buf);
|
||||
- puts("");
|
||||
+ puts("BH message=\"squidGuard error parsing squid line\"");
|
||||
}
|
||||
else {
|
||||
src = Source;
|
||||
@@ -196,14 +196,14 @@
|
||||
acl = sgAclCheckSource(src);
|
||||
if((redirect = sgAclAccess(src,acl,&squidInfo)) == NULL){
|
||||
if(src == NULL || src->cont_search == 0){
|
||||
- puts("");
|
||||
+ puts("ERR");
|
||||
break;
|
||||
} else
|
||||
if(src->next != NULL){
|
||||
src = src->next;
|
||||
continue;
|
||||
} else {
|
||||
- puts("");
|
||||
+ puts("ERR");
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
@@ -215,9 +215,10 @@
|
||||
squidInfo.ident[0] = '-';
|
||||
squidInfo.ident[1] = '\0';
|
||||
}
|
||||
- fprintf(stdout,"%s %s/%s %s %s\n",redirect,squidInfo.src,
|
||||
- squidInfo.srcDomain,squidInfo.ident,
|
||||
- squidInfo.method);
|
||||
+ if (isdigit(redirect[0]) && isdigit(redirect[1]) && isdigit(redirect[2]) && redirect[3]==':') {
|
||||
+ fprintf(stdout,"OK status=%c%c%c url=\"%s\"\n", redirect[0], redirect[1], redirect[2], &redirect[4]);
|
||||
+ } else
|
||||
+ fprintf(stdout,"OK rewrite-url=\"%s\"\n",redirect);
|
||||
/* sgLogError("%s %s/%s %s %s\n",redirect,squidInfo.src,squidInfo.srcDomain,squidInfo.ident,squidInfo.method); */
|
||||
break;
|
||||
}
|
||||
--- squidGuard-1.4.orig/src/sgDiv.c 2013-12-11 17:42:15.000000000 +1300
|
||||
+++ squidGuard-1.4.orig/src/sgDiv.c 2013-12-11 18:58:33.000000000 +1300
|
||||
@@ -771,7 +771,7 @@
|
||||
}
|
||||
sgLogError("Going into emergency mode");
|
||||
while(fgets(buf, MAX_BUF, stdin) != NULL){
|
||||
- puts("");
|
||||
+ puts("ERR");
|
||||
fflush(stdout);
|
||||
}
|
||||
sgLogError("ending emergency mode, stdin empty");
|
||||
--- squidGuard-1.4.orig/src/sgDiv.c.in 2013-12-11 17:42:15.000000000 +1300
|
||||
+++ squidGuard-1.4.orig/src/sgDiv.c.in 2013-12-11 18:58:40.000000000 +1300
|
||||
@@ -782,7 +782,7 @@
|
||||
}
|
||||
sgLogError("Going into emergency mode");
|
||||
while(fgets(buf, MAX_BUF, stdin) != NULL){
|
||||
- puts("");
|
||||
+ puts("ERR");
|
||||
fflush(stdout);
|
||||
}
|
||||
sgLogError("ending emergency mode, stdin empty");
|
||||
@@ -651,7 +651,7 @@ if ($ip ne $ipcache) {
|
||||
&General::log("Dynamic DNS ip-update for $settings{'HOSTDOMAIN'} : failure (could not connect to server)");
|
||||
}
|
||||
}
|
||||
elsif ($settings{'SERVICE'} eq 'udmedia.de') {
|
||||
elsif ($settings{'SERVICE'} eq 'udmedia') {
|
||||
# use proxy ?
|
||||
my %proxysettings;
|
||||
&General::readhash("${General::swroot}/proxy/settings", \%proxysettings);
|
||||
@@ -685,7 +685,7 @@ if ($ip ne $ipcache) {
|
||||
&General::log("Dynamic DNS ip-update for $settings{'HOSTDOMAIN'} : failure (could not connect to server, check your credentials---$out-$response--)");
|
||||
}
|
||||
}
|
||||
elsif ($settings{'SERVICE'} eq 'twodns.de') {
|
||||
elsif ($settings{'SERVICE'} eq 'twodns') {
|
||||
# use proxy ?
|
||||
my %proxysettings;
|
||||
&General::readhash("${General::swroot}/proxy/settings", \%proxysettings);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user